- Delphi(Pascal) code
; 程序5.6 用PUSH 指令将a段中word数据逆向存到B段中assume cs:codea segment dw 1,2,3,4,5,6,7,8a endsb segment dw 0,0,0,0,0,0,0,0b endscode segment start: mov ax,b mov ss,ax mov sp,16 mov ax,a mov ds,ax mov bx,0 ;这里不能用ax????????????? mov cx,8 s: push [bx] ;这里不能用ax????????????? add bx,2 ;这里不能用ax????????????? loop s mov ax,4c00H int 21Hcode endsend start
把有标志的地方的 bx 改为 ax 编译的时候有1个错误 为什么?
------解决方案--------------------------------------------------------
看到第8章就明白了
上面清楚地写着只有bx,si,di,bp可以用在"[...]"中进行内存单元的寻址。
王爽的书确实难度低,自学容易,但因为“知识屏蔽”,使一东西没有及时给出,楼主只要尽早把这本书看完就好了。
------解决方案--------------------------------------------------------
同意楼上,再向前看几章就会明白的。