马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
关于王爽著的《汇编语言》第八章,实验7的问题:
-----------------------------------------------------------------
1.
assume cs:codesg
data segment
db '1975','1976','1977','1978','1979','1980','1981','1982'
dd 16,22,382,1356,2390,8000,16000,24486
dw 3,7,9,13,28,38,130,220
data ends
table segment
db 21 dup ('year summ ne ?? ')
table ends
codesg segment
start:
mov ax,data
mov ds,ax
mov ax,table
mov es,ax
mov bx,0
mov di,0
mov cx,8
s: mov ax,[bx]
mov es:[di],ax
add bx,2
mov ax,[bx]
mov es:[2+di],ax
add bx,2
add di,10h
loop s
mov ax,4c00h
int 21h
codesg ends
end start
-------------------------------------------------------------------------------
2.
assume cs:codesg
data segment
db '1975','1976','1977','1978','1979','1980','1981','1982'
dd 16,22,382,1356,2390,8000,16000,24486
dw 3,7,9,13,28,38,130,220
data ends
table segment
db 21 dup ('year summ ne ?? ')
table ends
codesg segment
start:
mov ax,data
mov ds,ax
mov ax,table
mov ss,ax
mov bx,0
mov bp,0
mov cx,8
s: mov ax,[bx]
mov ss:[bp],ax
add bx,2
mov ax,[bx]
mov ss:[2+bp],ax
add bx,2
add bp,10h
loop s
mov ax,4c00h
int 21h
codesg ends
end start
---------------------------------------------------------------------
两段代码只有table段使用的寄存器不一样(第一个是es:[di],第二个是ss[bp]),在dubug中得到的结果不一样。
---------------------------------------------------------------------
第一段的执行结果:
-d 13db:0 13DB:0000 31 39 61 72 20 73 75 6D-6D 20 6E 65 20 3F 3F 20 19ar summ ne ?? 13DB:0010 31 39 37 36 20 73 75 6D-6D 20 6E 65 20 3F 3F 20 1976 summ ne ?? 13DB:0020 31 39 37 37 20 73 75 6D-6D 20 6E 65 20 3F 3F 20 1977 summ ne ?? 13DB:0030 31 39 37 38 20 73 75 6D-6D 20 6E 65 20 3F 3F 20 1978 summ ne ?? 13DB:0040 31 39 37 39 20 73 75 6D-6D 20 6E 65 20 3F 3F 20 1979 summ ne ?? 13DB:0050 31 39 38 30 20 73 75 6D-6D 20 6E 65 20 3F 3F 20 1980 summ ne ?? 13DB:0060 31 39 38 31 20 73 75 6D-6D 20 6E 65 20 3F 3F 20 1981 summ ne ?? 13DB:0070 31 39 38 32 20 73 75 6D-6D 20 6E 65 20 3F 3F 20 1982 summ ne ?? -------------------------------------------------------------- 第二段的执行结果: -d 13db:0 13DB:0000 31 39 37 35 20 73 75 6D-6D 20 6E 65 20 3F 3F 20 1975 summ ne ?? 13DB:0010 31 39 37 36 20 73 75 6D-6D 20 6E 65 20 3F 3F 20 1976 summ ne ?? 13DB:0020 31 39 37 37 20 73 75 6D-6D 20 6E 65 20 3F 3F 20 1977 summ ne ?? 13DB:0030 31 39 37 38 20 73 75 6D-6D 20 6E 65 20 3F 3F 20 1978 summ ne ?? 13DB:0040 31 39 37 39 20 73 75 6D-6D 20 6E 65 20 3F 3F 20 1979 summ ne ?? 13DB:0050 31 39 38 30 20 73 75 6D-6D 20 6E 65 20 3F 3F 20 1980 summ ne ?? 13DB:0060 31 39 38 31 20 73 75 6D-6D 20 6E 65 20 3F 3F 20 1981 summ ne ?? 13DB:0070 31 39 38 32 20 73 75 6D-6D 20 6E 65 20 3F 3F 20 1982 summ ne ??
|