
[2012-11-09 23:20] 实验二
1. (1)使用DEBUG,将上面的程序段写入内存,逐条执行,根据指令执行后的实际运行情况填空。
mov ax,ffff
mov ds,ax
mov ax,2200
mov ss,ax
mov sp,0100
mov ax,[0] ;ax= 5beah
add ax,[2] ;ax= 00e0h
mov bx,[4] ;bx= 31F0H
add bx,[6] ;bx= 6122H
push ax ;sp= 00FEH ,修改的内存单元地址是 2200:00FE内容为 00e0H
push bx ;sp= 0...
mov ax,ffff
mov ds,ax
mov ax,2200
mov ss,ax
mov sp,0100
mov ax,[0] ;ax= 5beah
add ax,[2] ;ax= 00e0h
mov bx,[4] ;bx= 31F0H
add bx,[6] ;bx= 6122H
push ax ;sp= 00FEH ,修改的内存单元地址是 2200:00FE内容为 00e0H
push bx ;sp= 0...
阅读全文 |
评论次数(0) |
浏览次数(573) |
所属类型(汇编作业)
[2012-11-09 22:36] 检测点3.2
(1)补全下面的程序,使其可以将10000H-1000FH中的8个字,逆序拷贝到20000H-2000FH中。
mov ax,1000H
mov ds,ax 初始化数据段
mov ax,2000H
mov ss,ax
mov sp,10h 初始化栈段
push [0]
push [2]
push [4]
push [6]
push [8]
push [A] ...
mov ax,1000H
mov ds,ax 初始化数据段
mov ax,2000H
mov ss,ax
mov sp,10h 初始化栈段
push [0]
push [2]
push [4]
push [6]
push [8]
push [A] ...
阅读全文 |
评论次数(0) |
浏览次数(382) |
所属类型(汇编作业)
[2012-11-09 21:06] 检测点3.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
mov ax,[0000] ax= 2662H
mov bx,[0001] bx= E626H
mov ax,bx ax= E626...
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
mov ax,[0000] ax= 2662H
mov bx,[0001] bx= E626H
mov ax,bx ax= E626...
阅读全文 |
评论次数(0) |
浏览次数(376) |
所属类型(汇编作业)
[2012-11-08 23:16] 实验一(2)
(2)将下面的3条指令写入从2000:0开始的内存单元中,利用这3条指令计算2的8次方。
mov ax,1
add ax,ax
jmp 2000:0003
-a 2000:0
2000:0000 mov ax,1
2000:0003 add ax,ax
2000:0005 jmp 2000:0003
2000:0007
-r cs
CS 0C1C
:2000
-r ip
IP 0100
:0000
-r
AX=0000 BX=0000 CX=0000 DX=000...
mov ax,1
add ax,ax
jmp 2000:0003
-a 2000:0
2000:0000 mov ax,1
2000:0003 add ax,ax
2000:0005 jmp 2000:0003
2000:0007
-r cs
CS 0C1C
:2000
-r ip
IP 0100
:0000
-r
AX=0000 BX=0000 CX=0000 DX=000...
阅读全文 |
评论次数(0) |
浏览次数(399) |
所属类型(汇编作业)
[2012-11-08 22:59] 实验一
b8 20 4e mov ax,4E20H ax=4E20H
05 16 14 add ax,1416H ax=6236H
bb 00 20 mov BX,2000H bx=2000H
01 d8 add ax,bx ax=8236H
89 c3 mov bx,ax bx=8236H
01 d8 add ax,bx ax=046CH
b8 1a 00 mov ax,001AH ax=00...
05 16 14 add ax,1416H ax=6236H
bb 00 20 mov BX,2000H bx=2000H
01 d8 add ax,bx ax=8236H
89 c3 mov bx,ax bx=8236H
01 d8 add ax,bx ax=046CH
b8 1a 00 mov ax,001AH ax=00...
阅读全文 |
评论次数(0) |
浏览次数(359) |
所属类型(汇编作业)
[2012-11-08 22:37] 检测点2.3
下面的3条指令执行后,cpu几次修改ip? 都是在什么时候?最后ip中的值是多少?
mov ax,bx 读取后(到指令缓冲器)第一次修改
sub ax,ax 读取后 第二次修改
jmp ax 读取后 第三次修改 修改ip中值 第四次修改
最后ip值=0000h 因为执行到最后ax中的值是0h。...
mov ax,bx 读取后(到指令缓冲器)第一次修改
sub ax,ax 读取后 第二次修改
jmp ax 读取后 第三次修改 修改ip中值 第四次修改
最后ip值=0000h 因为执行到最后ax中的值是0h。...
阅读全文 |
评论次数(0) |
浏览次数(367) |
所属类型(汇编作业)
[2012-11-08 21:31] 检测点2.2
1. 给定段地址为0001h,仅通过变化偏移地址寻址,cpu的寻址范围为
(10h)到(1000fh)。
思路:最小:sa*16+ea=00010h+0=10h
最大:sa*16+ea=00010h+ffff=1000fh
因为8086的寻址能力只有64kb(16位 ffff大小),最小为0,最大为ffff
.....................................................
2. 有一数据存放在内存20000h单元中,现给定段地址为sa,若想用偏移地址寻到此单元,则sa应满足的条件是:最小为(1001h)。最大为(200...
(10h)到(1000fh)。
思路:最小:sa*16+ea=00010h+0=10h
最大:sa*16+ea=00010h+ffff=1000fh
因为8086的寻址能力只有64kb(16位 ffff大小),最小为0,最大为ffff
.....................................................
2. 有一数据存放在内存20000h单元中,现给定段地址为sa,若想用偏移地址寻到此单元,则sa应满足的条件是:最小为(1001h)。最大为(200...
阅读全文 |
评论次数(0) |
浏览次数(341) |
所属类型(汇编作业)
[2012-11-08 18:56] 检测点1.1
1.1个cpu的寻址能力为8kb,那么他的地址总显得宽度是13。
思路:8*1024=8192 微型pc机中最小单位是byte
2^√8192=13
................................................
2.1KB的存储器中有1024个存储单元,存储单元的编号是从0到1023
思路:因为每个存储单元是从0开始索引的。
................................................
3.1KB的存储器可以储存1024个byte,8192个bit。
.......................
思路:8*1024=8192 微型pc机中最小单位是byte
2^√8192=13
................................................
2.1KB的存储器中有1024个存储单元,存储单元的编号是从0到1023
思路:因为每个存储单元是从0开始索引的。
................................................
3.1KB的存储器可以储存1024个byte,8192个bit。
.......................
阅读全文 |
评论次数(0) |
浏览次数(122) |
所属类型(汇编作业)
页码数(1):
1