汇编语言课后习题答案___郑晓薇(整理后的)
- 格式:doc
- 大小:80.50 KB
- 文档页数:11
习题一
1 无符号数: 11010011=211=D3H,01110111=119=77H,
10000011=131=83H,
00101111=47=2FH,
10101010=170=AAH
带符号数:11010011= -45=D3H,01110111=+119=77H,10000011= -125=83H,
00101111=+47=2FH,10101010= -86=AAH
2
5E8AH,0BE6H,3DEH,4940H
3
00011101+00110101=01010010=5 2H=82
01001001+11101000=00110001=3 1H=49
10111110+01010010=00010000=1 0H=16
10011010+11110001=10001011=8 BH= -117
4
00101001+01010011=01111100+0 0000110=10000010=82H=82 01110011-00100100=01001111-00000110=01001001=49H=49 01100110+00011000=01111110+0 0000110=10000100=84H=84 0000000100110010+01110101=00 00000110100111+00000110
=0000001000000111=0207H=207 5 000020A3H,FF94H,00003456H,007FH,FFFFEC00H
6 无符号数:0~65535,0000H~FFFFH;带符号数:-32768~+32767,8000H~7FFFH
7
(1) 38H等于十进制数56,是十进制数56的补码,数字8的ASCII码,十进制数38的压缩BCD码
(2) FFH等于十进制数-1,是带符号数-1的补码,无符号数为255
(3) 5AH等于十进制数90,是十进制数90的补码,大写字母Z的ASCII码
(4) 0DH等于十进制数13,是十进制数13的补码,回车符的ASCII码
8
(1) 108=01101100B=6CH,补码01101100B,压缩BCD码0000000100001000,ASCII码313038H
(2) 46=00101110B=2EH,补码00101110B,压缩BCD码01000110,ASCII码3436H
(3) –15=11110001B=F1H,补码11110001B,ASCII码2D3135H (4)
254=0000000011111110B=00FEH,补码0000000011111110B,压缩BCD 码0000001001010100,ASCII码323534H
9
(1) 56+63=01110111B,CF=0,SF=0,ZF=0,OF=0
(2) 83-45=00100110B,CF=0,SF=0,ZF=0,OF=0
(3) -74+29=11010011B,CF=0,
SF=1,ZF=0,OF=0
(4) -92-37=01111111B,CF=1,
SF=0,ZF=0,OF=1
10
回车、换行、响铃、ESC键、空格键、@、P、p
习题二
9 最少划分为16个逻辑段,最多划分为65536个逻辑段(每段16个字节)
10 CS:IP,DS:BX、SI、DI,ES:BX、SI、DI,SS:SP、BP
11 字节单元保存8位数,字单元保存16位数。根据源操作数的属性确定要访问的是字节单元还是字单元。
12 对于字节单元来说,偶地址和奇地址一样;对于字单元而言,最好用偶地址保存,可减少CPU的访存次数。
13 首单元的物理地址=38AE8H,末单元的物理地址
=38AE8H+7FFFH=40AE7H
16 (1)物理地址=27679H (2) 物理地址=20F92H (3) 物理地址=20F92H (2)和(3)的物理地址是一样的。说明逻辑地址不唯一,多个逻辑地址可对应到同一个物理单元上。
17 代码段CS:IP的物理地址
=55A84H 堆栈段SS:SP的物理地址
=4DB65H
数据段DS:BX的物理地址=17678H 附加段ES:DI的物理地址=2BA41H
18 当前栈指针所指单元的物理地址是1522CH。堆栈区中还能保存254个字。
19 执行E 200
20 执行U 100
21 执行R CX,然后输入100
22 执行E DS:0 ‘a’ ‘b’ ‘c’ ‘d’
习题三
3MOV AX,BX 源操作数为寄存器寻址,EA 无,物理地址无
MOV AX,1290H 立即寻址,EA 无,物理地址无
MOV AX,[BX] 寄存器间接寻址,
EA=1290H, 物理地址=2FBB0H
MOV AX,DS:[1290H] 直接寻址,
EA=1290H, 物理地址=2FBB0H
MOV AX,[BP] 寄存器间接寻址,
EA=6756H, 物理地址=26A56H
MOV [DI][BX],AX 目的操作数为基址变址寻址,EA=3C06H, 物理地址=32526H MOV ES:[SI],AX 寄存器间接寻址,
EA=348AH, 物理地址=50CAAH
7
MOV AX,[CX] 错。CX不能为间址寄存器MOV AL,1200H 错。立即数超出8位寄存器范围
MOV AL,BX 错。两个操作数不匹配MOV [SI][DI],AX 错。两个变址寄存器不能在一起
MOV ES:[DX],CX 错。DX不能为间址寄存器
MOV [AX],VALUE 错。AX不能为间址寄存器
MOV COUNT,[SI] 错。两个操作数不能都是存储单元8
(1) MOV AX,BX (2) MOV CL,15 (3) ADD AX,[BX]
(4) MOV [BX+SI],AL (5) MOV
AX,VALUE[SI] (6) SUB
AX,DS:[2000H]
9
(1) ADD AX,[X+4]
MOV Y,AX
(2) MOV BX,4
ADD AX,X[BX]
MOV Y,AX
(3) MOV BX,4
MOV SI,OFFSET X
ADD AX,[BX+SI]
MOV Y,AX
10 立即寻址方式中操作数(立即数)和
指令一起存放在代码段中。
习题四
10
(1) DATA SEGMENT
X DW 0
Y DW 0
DATA ENDS
(2) STRING DB ’Computer’
(3) COUNT DB 100 DUP(?)
(4) PI EQU 3.14
(5) VALUE LABEL BYTE
11 (1)对。(2)错。260超出了字节范围。(3)错。X3是字节型,1234H是字型,不匹配。
(4)对。(5)错。缺少DUP。(6)对。
12 (1)AL=3。(2)AX=2103H。(3)DX=TABLE的偏移地址。(4)CL=33H (5)BX=TABLE的段地址。(6)BX=1。(7)DX= TABLE的偏移地址。
13
MOV DX,2012H
MOV AX,5D68H
MOV CX,1003H
MOV BX,49A6H
ADD AX,BX (SUB AX,BX)
ADC DX,CX (SBB DX,CX)