汇编 | 内存中字的传送

Description

前面我们用 mov 指令在寄存器和内存之间进行字节型数据的传送。因为8086CPU是 $16$ 位结构,有 $16$ 根数据线,所以,可以一次性传送 $16$ 位的数据,也就是说可以一次性传送一个字。只要在 mov 指令中给出 $16$ 位的寄存器就可以进行 $16$ 位数据的传送了。比如:


mov  bx,1000H
mov  ds,bx
mov  ax,[0]       ; 1000:0 处的字型数据送入ax
mov  [0],cx      ; cx中的16位数据送到1000:0处

问题3.3

内存中的情况如图\(3.2\)所示,写出下面的指令执行后寄存器 \(ax,bx,cx\) 中的值。

分析:

进行单步跟踪,看一下每条指令执行后相关寄存器中的值,见表\(3.10\)

问题3.4

内存中的情况如图\(3.3\)所示,写出下面的指令执行后内存中的值,思考后看分析。

mov   ax,1000H
mov   ds,aX
mov   ax,11316
mov   [0],ax
mov   bx,[0]
sub   bx,[2]
mov   [2],bx

分析:

进行单步跟踪,看一下每条指令执行后相关寄存器或内存单元中的值,见表$3.2 $

posted @ 2021-10-03 16:17  RioTian  阅读(160)  评论(0编辑  收藏  举报