深入解析:基础理论与实践应用

更新:11-09 民间故事 我要投稿 纠错 投诉

大家好,如果您还对深入解析:基础理论与实践应用不太了解,没有关系,今天就由本站为大家分享深入解析:基础理论与实践应用的知识,包括的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!

字节=B

1KB=1024B

1MB=1024KB

需要明确三个概念:

数据、控制、地址

一些基础操作及常识

MOV AX [3]; //将单元3的内容写入AX

8086数据线是16位80396 32位8088 8位

存储器

RAM 断电时丢失随机存储器、缓存等、显存、存储程序等。

ROM只读存储器,断电不丢失,多人模块BIOS

从图中可以看出:通过控制内部存储空间上数据的变化来控制外设。注意,这些逻辑地址是虚构的连续空间,但实际上是设备存储空间的连续寻址电路。

因此,在控制系统及其片内资源时,有必要了解其内部空间地址的分布。

寄存器

CPU内部由运算器(信息处理)、控制器、寄存器(信息存储)等组成,程序员通过修改寄存器来控制CPU。

8086中的寄存器是16位

通用寄存器:AX(AH,AL) BX(BH,BL)等

两个BYTE(8 位)形成一个字(16 位)。

程序集不区分大小写

使用寄存器时需要注意的事项:

1. 当使用AL 和AH 时,它们将分别被视为8 位寄存器。 AL 的溢出进位不会存储在AH 中。

2、寄存器与寄存器或数据交换时,要注意对应的位数以及存储数的上下限。

16位CPU特点:

8086中的地址总线是20位,它提供的数据位数是16位,所以你必须熟悉段地址+偏移地址来寻址物理地址的思想。

这种方式形成了段思维,完全是这种寻址方式造成的。事实上,内存是不存在分段的。一般情况下,段地址需要在加法器中移位并与偏移地址相加。

段寄存器cs和ip指令指针寄存器

8086中段寄存器包括CS、DS、ES和SS。当8086想要访问内存时,它们提供内存单元的段地址。

其中,合并地址时的主要操作转移指令mov不能修改cs和ip的值。

可以通过转移指令修改,如jmp段地址:偏移地址

示例:jmp 2AE3:3 执行后:CS=2AE3H IP=0003H,下一步将取2AE33H处的指令。

又如: jmp 3:0B16 -: CS=0003H IP=0B16H

只修改IP寄存器:

跳跃斧; //只修改ax中的值到IP寄存器中,CS寄存器中的值保持不变。

DEBUG SHELL

在DOSBOX 环境中:

MOUNT C C:/DEBUG //路径中有DEBUG.EXE

C: //进入挂载的C盘,即C:/DEBUG

DEBUG //进入DEBUG环境

R命令:查看或修改当前所有寄存器的状态和值

-R //查看

-R AX //修改AX寄存器的值

-D 命令:示例

-D 1000:0 //格式为段地址:偏移地址(终止偏移地址)

-E 可以指定以十六进制形式修改内存的内容。

-U 下面

-T 下面

-A 下面

寄存器(内存访问)

一些标题:

地址字单元——从地址开始的两个连续的存储单元(16位,2BYTE)

DS和[address]

DS段寄存器,用于存储默认段地址:

移动bx,1000h

移动ds,bx

移动斧头[0]; //8086取出1000h地址处的数据,通过ds中的默认段地址加上[0]偏移地址将其传输到AX寄存器。

并且注意:8086不支持传入数据到段寄存器的操作。

注意:字数据如何存储在内存中

2C34H 10000H 上的存储方式(8086)

mov,add,sub

类似的加减指令不能直接操作段寄存器,但其他指令可以

数据段:

自定义一个专门用于存储数据的内存地址,例如用DS来存储数据段的段地址。

关于深入解析:基础理论与实践应用的内容到此结束,希望对大家有所帮助。

【深入解析:基础理论与实践应用】相关文章:

1.蛤蟆讨媳妇【哈尼族民间故事】

2.米颠拜石

3.王羲之临池学书

4.清代敢于创新的“浓墨宰相”——刘墉

5.“巧取豪夺”的由来--米芾逸事

6.荒唐洁癖 惜砚如身(米芾逸事)

7.拜石为兄--米芾逸事

8.郑板桥轶事十则

9.王献之被公主抢亲后的悲惨人生

10.史上真实张三丰:在棺材中竟神奇复活

上一篇:酒杯破碎:揭秘背后的故事与情感 下一篇:三亚婚纱摄影工作室【遇见爱摄影】荣获婚纱照评选前十名,口碑再攀高峰