汇编网首页登录博客注册
diodes_1的学习博客
博客首页博客互动【做检测题】论坛求助

我的博客

个人首页 |  我的文章 |  我的相册 |  我的好友 |  最新访客 |  文章收藏 |  论坛提问 |  友情链接 |  给我留言  
图片载入中
学习动态
最新留言
文章收藏
友情链接

[2008-04-18 16:56] 实验五-(5)

assume cs:code
     a segment 
        db 1,2,3,4,5,6,7,8
     a ends
     b segment
        db 1,2,3,4,5,6,7,8
     b ends
     c segment
        db 0,0,0,0,0,0,0,0
     c ends
     code segment
start:mov ax,a
        mov ds,ax   ;将ds指向a数据段
        mov ax,c
        mov es,ax   ;将es指向c数据段
        mov bx,0    ;bx寄存器清零
        mov cx,4    ;...
阅读全文 | 评论次数(4) | 浏览次数(840) | 所属类型(汇编作业)

[2008-04-14 14:40] 实验四-(2)

点击查看原图
代码如下:

assume cs:code
code segment
        mov ax,0020h
        mov ds,ax
        mov dx,0
        mov cx,64
   S:mov ds:[bx],bx
        inc bx
        loop s
        mov ax,4c00h
        int 21h
code ends
end
运行结果如图...
阅读全文 | 评论次数(1) | 浏览次数(665) | 所属类型(汇编作业)

[2008-04-10 18:46] 实验三(3)

点击查看原图
PSP内容查看结果如图所示...
阅读全文 | 评论次数(3) | 浏览次数(684) | 所属类型(汇编作业)

[2008-04-10 18:40] 实验三(2)

点击查看原图
当CPU执行完指令“ADD SP,+04”后,再次使用T命令,就会出现如图所示的错误提示。
分析:
在执行“ADD SS,AX”之前,栈空间为0B79:0~0B79:FFFF,长度为64KB,执行“ADD SS,AX”之后,栈空间变为2000:0~2000:F,长度为16B,执行“ADD SP,4”之后,栈空间为2000:0~2000:3,长度仅为4B
这时对Debug输入T命令,Debug将控制权交给CPU,当CPU执行“POP AX”完指令后,将控制权交给Debug,Debug引发中断,由于当前CPU状态数据长度大于当前栈空间长度,这时Debug将CPU当前状态数据存入当前栈中的操作...
阅读全文 | 评论次数(3) | 浏览次数(640) | 所属类型(汇编作业)

[2008-04-09 20:49] 第三章实验任务(2)这样理解正确么?

点击查看原图
如图所示
1.在执行"MOV AX,2000"之前,默认的栈空间(0B39:FFEE)和20000H~2000FH内存段均为空,如图中红色1所示。

2.执行"MOV AX,2000"之后,CPU会将一些临时信息存入默认栈空间0B39:FFEE 中的某些栈单元里(比如,“MOV AX,2000”指令执行后,AX值被存入0B39:4处的字单元中,IP值被存入0B39:8处字单元中,CS值被存入0B39:A处的字单元中,而且这些值的存放位置会随SP的改变而发生变化),这时20000H~2000FH段内所有单元仍为空,如图中红色2处所示。

3.执行“MOV SS,AX”后,默认的栈段空间...
阅读全文 | 评论次数(8) | 浏览次数(730) | 所属类型(汇编作业)

[2008-04-07 15:10] 检测点3.2

点击查看原图
(1)
mov ax,1000H   
mov ds,ax      ; 设置数据段段地址为:1000H

mov ax,2000H   
mov ss,ax      
mov sp,0010H ; 设置栈段段地址,初始化栈顶地址, 栈空间:20000H~2000FH, 且栈空

push [0]       ; sp=sp-2,将1000:0处字单元内容压入栈中, ss:sp指向2000:000E
push [2]       ; sp=sp-2,将1000:2处字单元内容压入栈中, ss:sp指向2000:000C
push [4]       ; sp=sp-2,将...
阅读全文 | 评论次数(3) | 浏览次数(746) | 所属类型(汇编作业)

[2008-04-07 09:04] 检测点3.1(2)

点击查看原图
各寄存器初始值:CS=2000H,IP=0,DS=1000H,AX=0,BX=0;
1> CPU执行的指令序列
mov ax,6622H (指令长度:3字节)
jmp 0ff0:0100(指令长度:5字节)
mov ax,2000H (指令长度:3字节)
mov ds,ax    (指令长度:2字节)
mov ax,[0008](指令长度:3字节)
mov ax,[0002](指令长度:3字节)

2> CPU执行每条指令后,CS、IP和相关寄存器中的数值如下:
                       
                               ...
阅读全文 | 评论次数(4) | 浏览次数(768) | 所属类型(汇编作业)

[2008-04-07 09:03] 检测点3.1(2)

点击查看原图
各寄存器初始值:CS=2000H,IP=0,DS=1000H,AX=0,BX=0;
1> CPU执行的指令序列
mov ax,6622H (指令长度:3字节)
jmp 0ff0:0100(指令长度:5字节)
mov ax,2000H (指令长度:3字节)
mov ds,ax    (指令长度:2字节)
mov ax,[0008](指令长度:3字节)
mov ax,[0002](指令长度:3字节)

2> CPU执行每条指令后,CS、IP和相关寄存器中的数值如下:
                       
                      CS     IP...
阅读全文 | 评论次数(1) | 浏览次数(379) | 所属类型(汇编作业)

[2008-04-07 08:02] 检测点3.1(1)

(1) 在Debug中,用“-d 0:0 1f”查看内存,结果如下:

0000:0000  70 80 F0 30 EF 60 30 E2-00 80 80 12 66 20 22 60
0000:0010  62 26 E6 D6 CC 2E 3C 3B-AB BA 00 00 26 06 66 88

下面的程序执行前,AX=0,BX=0,写出每条汇编指令执行完后相关寄存器中的值。

mov ax,1
mov ds,ax        //ds=0001H
mov ax,[0]        AX=2662H  //将0010H~0011H内存单元中的内容传给AX
mov bx,[1]        BX=E...
阅读全文 | 评论次数(1) | 浏览次数(321) | 所属类型(汇编作业)

[2008-04-05 16:04] 第二章实验任务(4)

点击查看原图
对第二章实验任务(4)的理解
如图所示
不知道这样理解是否正确...
阅读全文 | 评论次数(3) | 浏览次数(421) | 所属类型(汇编作业)
页码数(2):  1  2