关于试验九
本帖最后由 wuyaozi 于 2011-11-17 18:47 编辑assume cs:code;ds:data
data segment
db 'welcome to masm!'
data ends
code segment
start:mov ax,data
mov ds,ax
mov bx,0
mov ax,0B872H
mov es,ax
mov si,0
mov cx,16
s:mov al,
mov es:,al 此处两行我写成 mov byte ptr es:,ds: 编译错误。我不知道错在哪里?望高手解答?
mov byte ptr es:,2h
mov al,
mov es:0A0H,al
mov byte ptr es:0A0H,24h
mov al,
mov es:140H,al
mov byte ptr es:140H,71h
add si,2
inc bx
loop s
mov ax,4c00h
int 21h
code ends
end start 看来我得把汇编重新过一遍 es是段寄存器,不能当作通用寄存器来用 好像是es:和ds:不能同时传送数据,中间必须要有个通用寄存器做间接传送。
就好象data不能直接和ds挂钩一样,中间必须要有个通用寄存器做中介。 4楼正解,两个内存单元之间不可以直接通信。 4楼正解,小甲鱼老师说了,他们2个不能直接发生关系的。。
不要想歪哈,思想要纯洁:lol Mr.C 发表于 2011-11-17 19:04 static/image/common/back.gif
看来我得把汇编重新过一遍
我每次遇到不懂得,我都是重新看的,痛苦!!! 这个问题我也遇到过,百度过,应该是2个内存单元不能直接操作,必须要通过媒介寄存器
页:
[1]