福州大学汇编语言实验报告1-4 联系客服

发布时间 : 星期三 文章福州大学汇编语言实验报告1-4更新完毕开始阅读fcaf4800763231126edb116c

实验2

(1)使用Debug,将上面的程序段写入内存,逐条执行,根据指令执行后的实际运行情况填空。 mov ax,ffff mov ds,ax

mov ax,2200 mov ss,ax mov sp,0100

mov ax,[0] ;ax=5BEA add ax,[2] ;ax=5CCA mov bx,[4] ;bx=30F0 add bx,[6] ;bx=6021

push ax ;sp=OOFE;修改的内存单元的地址是1001DH内容为0100 push bx ;sp=00FC;修改的内存单元的地址是1001EH内容为00FE pop ax ;sp=00FE;ax=6021 pop bx ;sp=0100;bx=5CCA

push [4] ;sp=OOFE;修改的内存单元的地址是10024H内容为0100 push [6] ;sp=OOFC;修改的内存单元的地址是10028H内容为00FE

(2)仔细观察3.19中的实验过程,然后分析:为什么2000:0~2000:f中的内容会发生改变?

可能要再做实验才能发现其中的规律。如果你在这里就正确回答了这个,那么要恭喜你,因为你有很好的悟性。大多数的学习者对这个问题还是比较迷惑的,不过不要紧,因为随着课程的进行,这个问题的答案将逐渐变得显而易见。

因为 mov ax,2000 mov ss,ax mov sp,10 mov ax,3123 push ax mov ax,3366 push ax

因为随着程序的运行,寄存器中的内容被修改了,像20 00就是ax寄存器中内容,08 01是ip中的内容,39 0b是cs中的内容。

实验3

实验内容:编程、编译、连接、跟踪

实验任务:

(1)将下面的程序保存为t1.asm 文件,将其生成可执行文件t1.exe. assume cs:codesg codesg segment

mov ax,2000H mov ss,ax mov sp,0 add sp,10 pop ax pop bx push ax push bx pop ax pop bx

mov ax,4c00H int 21H

codesg ends

end

(2)用Debug跟踪t1.exe的执行过程,写出每一步执行后,相关寄存器中的内容和栈顶的内容。