主题:急求
小牛斑斑
[专家分:1210] 发布于 2007-03-04 13:32:00
table dw 10,20,30,40,50
entry dw 3
mov bx,offset table
add bx,entry
mov ax,[bx]
请问ax=____
为什么??
谢谢
回复列表 (共5个回复)
沙发
ccpp [专家分:9360] 发布于 2007-03-05 13:16:00
mov bx,offset table
;table的地址 保存在bx
;table开始地址的内容依次为
; bx 10
; bx+1 00
; bx+2 20
; bx+3 00
; bx+4 30
; bx+5 00;
add bx,entry
; bx+3
mov ax,[bx]
;bx+3 到 al, al=00
;bx+4 到 ah, ah=30
;所以ax=3000,即ax =1E00h
板凳
小牛斑斑 [专家分:1210] 发布于 2007-03-05 18:49:00
3000和1e00h有什么区别啊~~!
3 楼
小牛斑斑 [专家分:1210] 发布于 2007-03-06 10:17:00
3000是十进制吧,为什么答案是3000h呀??也有答案是1e00h
4 楼
ccpp [专家分:9360] 发布于 2007-03-06 12:34:00
3000h明显是错的
你 debug 一下就知道了,
因为定义的 是十进制30
table dw 10,20,30,40,50
5 楼
xit001 [专家分:20] 发布于 2007-03-23 18:47:00
是3000h
因为你输出的时候要转换成ASICC
我来回复