
[2012-11-26 23:31] 实验9 打印welcome to masm!
assume cs:code,ds:data
data segment
db 'welcome to masm!'
data ends
code segment
start:
mov ax,data
mov ds,ax
mov ax,0b800h
mov es,ax
mov si,0
mov di,0
mov bx,0
mov dx,0
mov cx,25
s:
mov dx,cx
mov ah,07h ;...
data segment
db 'welcome to masm!'
data ends
code segment
start:
mov ax,data
mov ds,ax
mov ax,0b800h
mov es,ax
mov si,0
mov di,0
mov bx,0
mov dx,0
mov cx,25
s:
mov dx,cx
mov ah,07h ;...
阅读全文 |
评论次数(0) |
浏览次数(447) |
所属类型(汇编作业)
[2012-11-26 23:23] 实验8 分析一个奇怪的程序
jmp short s1在内存中的值为EB F6,F6是十进制数-10的补码,意
思是当前IP的值向前偏移10字。
mov cs:[di],ax执行后,EB F6被拷贝到代码段的第8,9个字节的
位置
jmp short s在指令寄存器中执行之前,IP的值是18H,jmp short s向前偏移的值为目的地址-源地址,目的地址为8H,源地址为18H,故jmp short s 执行后,IP=18H+偏移值=18H+8H-18H=8H,然后CPU继续取指令,先将EB F6取出,放到指令缓冲器中,然后IP的值加上EB F6的长度2,这时IP=0AH,然后执行指令EB F6,则IP+(-0AH...
思是当前IP的值向前偏移10字。
mov cs:[di],ax执行后,EB F6被拷贝到代码段的第8,9个字节的
位置
jmp short s在指令寄存器中执行之前,IP的值是18H,jmp short s向前偏移的值为目的地址-源地址,目的地址为8H,源地址为18H,故jmp short s 执行后,IP=18H+偏移值=18H+8H-18H=8H,然后CPU继续取指令,先将EB F6取出,放到指令缓冲器中,然后IP的值加上EB F6的长度2,这时IP=0AH,然后执行指令EB F6,则IP+(-0AH...
阅读全文 |
评论次数(0) |
浏览次数(256) |
所属类型(汇编作业)