寻址方式的综合应用

一、代码实现

;目的:寻址方式的综合应用

;编写:Tony
;语言:asm
;时间:2020.3.25

;修改信息:
;1)Ken Olsen在富翁版上的排名已升至38名
;2)DEC的收入增加了70亿美元
;3)该公司的著名产品已变为VAX系列的计算机

assume cs:codesg,ds:datasg

;数据段存储原始数据
datasg segment
  db 'DEC'       ;公司名称(+00H)
  db 'Ken Oslen'   ;总裁姓名(+03H)
  dw 137         ;排名(+0CH)
  dw 40         ;收入(40亿美元)(0EH)
  db 'PDP'       ;著名产品(10H)
datasg ends

;代码段
codesg segment
start:    mov ax,datasg
    mov ds,ax
    mov bx,0

    mov word ptr[bx+0ch],38   ;寄存器相对寻址修改排名
    mov word ptr[bx+0eh],70   ;寄存器相对寻址修改收入

    mov si,0
    mov byte ptr[bx+10h+si],'V'   ;相对基址变址寻址修改产品名称
    inc si
    mov byte ptr[bx+10h+si],'A'
    inc si
    mov byte ptr[bx+10h+si],'X'

    mov ax,4c00h
    int 21h
codesg ends
end start

二、上机调试

1)一步一步调试

 2)此时,不要在执行下一个指令,查看一下数据段中的原始数据

为了更好的观察原始数据,把这些数据用红色框圈出来

 3)继续执行,看数据段中的数据

 排名已经更改成了16进制的26H,即十进制的38

4)next……

 收入已经更改成了16进制的46H,即十进制的70

5)next……连续执行若干个指令,到这里,然后观察数据段中的数据

 公司的产品名称也被修改成了VAX

6)至此,调试结束

猜你喜欢

转载自www.cnblogs.com/TonyJia/p/12564759.html