寄存器(内存访问 1)

内存访问首先要有地址,8086pc中的段地址存放在 ds 寄存器中(ds 和 cs是不一样的,cs是定位地址用于读取内存中的指令或者数据,而ds是读取内存中的数据时使用,下面我们会明白区别)

将内存中的数据写入寄存器:

mov bx,1000H

mov ds,bx

mov al,[0]

第一句是把1000H给bx(寄存器),第二句把bx中的值给ds(段地址寄存器),第三句从1000:0H中读取数据给al(寄存器ax的低8位);至于为什么不直接把段地址1000H给ds,这是8086硬件设计的问题,咱只能这么做了。

把最后一句改成 mov [0],al 意思就是把寄存器ax的低8位写入内存地址1000:0H处。

可以做以下例子:

mov ax,1000H

mov ds,ax

mov ax,11316

mov [0],ax

mov bx,[0]

sub bx,[2]

mov [2],bx

内存中的数据:

10000H:23

10001H:11

10002H:22

10003H:11

最后的结果会让你吃惊的,想知道的话就留言吧。

,“但行好事,莫问前程”,往往成功的几率反而更大些;

寄存器(内存访问 1)

相关文章:

你感兴趣的文章:

标签云: