关于汇编语言的两个简单问题

来源:百度知道 编辑:UC知道 时间:2024/05/30 03:53:12
这是关于书后的几道习题,恳请高手指点,先给20,如果做出来了一定再追加分

1 设data的定义如下,
data dw 100dup(?)将data的最后一个字传送到ax寄存器,要求至少3种方法

2 dseg segment x dw 1,3
dseg ends
mov ax,dseg
mov ds,ax
mov ax,x+1,求ax的值

1、
(1) mov ax,data+198
(2) mov si,offset data
add si,198
mov ax,[si]
(3) 实在想不起来什么了………… -_=|||

2、AX=0300
内存中数据分配是这样的
01 00 03 00
x+1,指向的字空间就是 00 03,换算成数字(低位在后,高位在前)就是0300h了

楼上方法(3):
mov bx,198
mov ax,data[bx]

内存中数据分配
X 01
X+1 00
X+2 03
X+3 00
那么AX 就是0300
不过你程序中没有说是字节传送还是字的传送,所以汇编会报错的