(1)补全下面的程序,使其可以将10000H~1000FH中的8个字,逆序拷贝到20000H~2000FH中,逆序拷贝的含义如图3.17所示:
10000H 23 33 20000H
10001H 01 11 20001H
10002H 66 20002H
10003H 22 20003H
. . . .
. . → → → . ...
- [mywiil] 嗯。理解都没什么问题。 05/22 15:36
- [mywiil] 博主的前两次怎么和第三次不一致呢? 看看书中小节点中对于8086cpu执行原理的描述吧,看看I 05/22 14:16
- [mywiil] 原理是直接操作显存数据,低位指定字符,高位指定需要显示的颜色(我目前发现的规律,不知道这样理解对不对 05/22 14:14
- [mywiil] 理解的基本上没问题。 05/22 14:13
- [blackberry] OK. 05/21 16:50
- [mess] 分析的很正确。 05/19 16:28
- [mess] 第三次和前两次修改的时机是一样,同样也应该是相同的描述。 否则意思就模糊了。 05/19 16:28
- [mess] 加油+坚持。 05/17 15:59
- [mess] 分析的都正确。 05/17 15:58
[2010-05-21 02:35] 检测点3.2
阅读全文 |
评论次数(1) |
浏览次数(925) |
所属类型(汇编作业)
[2010-05-18 19:52] 检测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=____
mov bx,[0001] BX=____
mov ax,bx AX=____
mov ax,[000...
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=____
mov bx,[0001] BX=____
mov ax,bx AX=____
mov ax,[000...
阅读全文 |
评论次数(1) |
浏览次数(917) |
所属类型(汇编作业)
[2010-05-18 18:09] 实验1
(1)略
(2)将下面3条指令写入从2000:0开始的内存单元中,利用这3条指令计算2的8次放.
mov ax,1
add ax,ax
jmp 2000:0003
答:首先用-r命令把寄存器cs,ip的值分别改为2000和0000;再利用jmp指令指向add ax,ax,实现自加,循环8次自加即可达到2^8次方目的(-t命令).
(3)查看内存中的内容
PC机主板上的ROM中写有一个生产日期,在内存FFF00H~FFFFFH的某几个单元中,请找到这个生产日期并试图改变它.
答:用-d命令查看fff0:0000 00ff可以看到最后一栏有如下信息:
FFF0...
(2)将下面3条指令写入从2000:0开始的内存单元中,利用这3条指令计算2的8次放.
mov ax,1
add ax,ax
jmp 2000:0003
答:首先用-r命令把寄存器cs,ip的值分别改为2000和0000;再利用jmp指令指向add ax,ax,实现自加,循环8次自加即可达到2^8次方目的(-t命令).
(3)查看内存中的内容
PC机主板上的ROM中写有一个生产日期,在内存FFF00H~FFFFFH的某几个单元中,请找到这个生产日期并试图改变它.
答:用-d命令查看fff0:0000 00ff可以看到最后一栏有如下信息:
FFF0...
阅读全文 |
评论次数(1) |
浏览次数(1023) |
所属类型(汇编实验)
[2010-05-18 17:41] 检测点2.3
下面的3条指令执行后,CPU几次修改IP?都是在什么时候?最后IP中的值为多少?
mov ax,bx
sub ax,ax
jmp ax
答:CPU 4次修改IP
第一次,mov ax,bx指令执行后
第二次,sub ax,ax指令执行后
第三次,读入指令jmp ax
第四次,jmp ax指令执行后
最后IP的值为0 (Sub ax,ax ax=0)...
mov ax,bx
sub ax,ax
jmp ax
答:CPU 4次修改IP
第一次,mov ax,bx指令执行后
第二次,sub ax,ax指令执行后
第三次,读入指令jmp ax
第四次,jmp ax指令执行后
最后IP的值为0 (Sub ax,ax ax=0)...
阅读全文 |
评论次数(2) |
浏览次数(913) |
所属类型(汇编作业)
[2010-05-18 17:30] 检测点2.2
(1)给定段地址为0001H,仅通过变化偏移地址寻址,CPU的寻址范围为__到__.
答:偏移地址的范围为0~~FFFFH,寻址范围=0001H*16+偏移地址,所以CPU的寻址范围为:00010H到1000FH.
(2)有一数据存放在内存20000H单元中,现给定段地址为SA,若想用偏移地址寻到此单元.则SA应满足的条件是:最小为___,最大为____.
(提示,反过来思考一下,当段地址给定为多少,CPU无论怎么变化偏移地址都无法寻到20000H单元?)
答:因为,物理地址=段地址*16+偏移地址.
段地址*16=物理地址-偏移地址,所以当偏移地址取最小...
答:偏移地址的范围为0~~FFFFH,寻址范围=0001H*16+偏移地址,所以CPU的寻址范围为:00010H到1000FH.
(2)有一数据存放在内存20000H单元中,现给定段地址为SA,若想用偏移地址寻到此单元.则SA应满足的条件是:最小为___,最大为____.
(提示,反过来思考一下,当段地址给定为多少,CPU无论怎么变化偏移地址都无法寻到20000H单元?)
答:因为,物理地址=段地址*16+偏移地址.
段地址*16=物理地址-偏移地址,所以当偏移地址取最小...
阅读全文 |
评论次数(1) |
浏览次数(935) |
所属类型(汇编作业)
[2010-05-17 18:53] 检测点2.1
(1)写出每条汇编指令执行后相关寄存器中的值.
答:
mov ax,62627 AX=F4A3H
mov ah,31H AX=31A3H
mov al,23H AX=3123H
add ax,ax AX=6246H
mov bx,826CH BX=826CH
mov cx,ax CX=6246H
mov ax,bx AX=826CH
add ax,bx AX=04D8H
mov al,bh AX=0482H
mov ah,bl AX=6C82H
add ah,ah AX=D88...
答:
mov ax,62627 AX=F4A3H
mov ah,31H AX=31A3H
mov al,23H AX=3123H
add ax,ax AX=6246H
mov bx,826CH BX=826CH
mov cx,ax CX=6246H
mov ax,bx AX=826CH
add ax,bx AX=04D8H
mov al,bh AX=0482H
mov ah,bl AX=6C82H
add ah,ah AX=D88...
阅读全文 |
评论次数(1) |
浏览次数(923) |
所属类型(汇编作业)
[2010-05-17 03:47] 检测点1.1
检测点1.1作业:
(1)1个CPU的寻址能力为8KB,那么它的地址总线的宽度为:___
答:因为寻址能力为8*1024B=8192B,而2^13=8192,所以地址总线的宽度为13.
(2)1KB的存储器有___个存储单元?存储单元的编号从___到___.
答:1个存储单元可以存储8bit,即1B,所以1KB存储器有1024个存储单元,编号从0~~1023.
(3)1KB的存储器可以存储___个bit,___个byte.
答:1KB=1024B=1024*8bit,可以存储8192bit,1024byte.
(4)1GB,1MB,1KB分别是_...
(1)1个CPU的寻址能力为8KB,那么它的地址总线的宽度为:___
答:因为寻址能力为8*1024B=8192B,而2^13=8192,所以地址总线的宽度为13.
(2)1KB的存储器有___个存储单元?存储单元的编号从___到___.
答:1个存储单元可以存储8bit,即1B,所以1KB存储器有1024个存储单元,编号从0~~1023.
(3)1KB的存储器可以存储___个bit,___个byte.
答:1KB=1024B=1024*8bit,可以存储8192bit,1024byte.
(4)1GB,1MB,1KB分别是_...
阅读全文 |
评论次数(1) |
浏览次数(929) |
所属类型(汇编作业)
[2010-05-17 03:04] 新注册,我在努力
相信我能学好~加油!...
阅读全文 |
评论次数(1) |
浏览次数(869) |
所属类型(心情日志)