第一章 基础知识
1.1 填空题
(1) 汇编程序 , 汇编
(2) 汇编 ,连接
(3) 位 , 字节 ,_字_
(4) 组合型 , 非组合型
(5)_0~255 或 00000000B~11111111B_;_+127~ -128 或 01111111B~10000000B
1.2 选择题
DCDCC
1.3~1.5 略。
1.6 (1)4109=1 0000 0000 1101B = 100DH
(2)123 =0111 1011B=7BH
(3)0.176 =0.0010 1101B=0.2DH
(4)17.625=10001.101B=11.AH
1.7 (1)101011=2BH=43D
(2)11010011=0D3H=211
(3)1011.0101=0B.5H=11.3125
(4)11011.00111=1B.38H=27.21875D
1.8 (1)2DH =101101B=45
(2)15.12H=10101.0001 0010B=21.0703125
(3)1C5H =1 1100 0101B=453
(4)21F.06H=10 0001 1111.0000 0110B=543.0234375
1.9
(1)35
原码 00100011B
反码 00100011B
补码 00100011B
(2)-45
10101101B
11010010B
11010011B
(3)-98
11100010B
10011101B
10011110B
(4)-128 (5)0
10000000B
11111111B
10000000B
00000000B
00000000B
00000000B
(6)-1
10000001B
11111110B
11111111B
1.10 (1)带符号数 = 不带符号数 = 28432
(2)带符号数 = -32768,不带符号数 = 32768
(3)带符号数 = -15659,不带符号数=49877
(4)带符号数=-1,不带符号数=65535
1.11 (1)64H,100
(3)08H,8
(2)8BH,-11
(4)0DAH,-90
1.12 (1)35=[0011 0101]组合型 BCD= [0000 0011 0000 0101]非组合型 BCD
(2)74=[0111 0100]组合型 BCD= [0000 0111 0000 0100]非组合型 BCD
(3)98= [1001 1000]组合型 BCD= [0000 1001 0000 1000]非组合型 BCD
(4)14=[0001 0100]组合型 BCD= [0000 0001 0000 0100]非组合型 BCD
1.13 (1)10101001 + 01100100 = 0000 1101B(溢出)
10101001 - 01100100 = 0100 0101B
10101001 ∧ 01100100= 0010 0000B
1
10101001 ∨ 01100100 =1110 1101B
10101001 ∨(异或) 01100100 =11001101 B
(2)01110011 + 10110011 = 0010 0110B(溢出)
01110011-10110011= 1100 0000B(溢出)
01110011∧10110011=0011 0011B
01110011∨10110011=1111 0011B
01110011∨(异或)10110011=1100 0000B
1.14 53;35;5
第二章 80x86 计算机组织结构
2.1 填空题
(1)_CPU_、_存储器_、_I/O 设备
(2)_运算器_、_控制器_、_寄存器_
(3)_数据_、_地址_、_控制_
(4)_先进后出_
(5)_物理地址_、_逻辑地址_
(6)_20_、_1M 字节_
(7)_实_、_保护_、_实_
(8)_13240H_、_3140H_
2.2 选择题
DCBC BADB
2.3~2.9 略。
2.10 01H,0201H,0403 0201H
2.11 11FDBH,CF=1,ZF=0,SF=0
2.12 略。
2.13
30000H
30001H
30002H
30003H
30004H
30005H
56H
32H
54H
10H
00H
78H
2.14 (10002H)=50H,(10000H)=7090H,(10001H)=1030 5070H
2.15 物理地址=30400H;
同一物理地址还有其他逻辑地址:
2F3F:1010H
2F40:1000H
2F41:0FF0H
……
2
2.16
SP→
72H
61H
80H
50H
1000:00FCH
1000:00FDH
1000:00FEH
1000:00FFH
1000:0100H
SP→
1000:0100H
(1) 压入堆栈前
(2) 将数据 5080H、6172H 压入堆栈后
SP→
80H
50H
1000:00FEH
1000:00FFH
1000:0100H
(3) 将栈顶单元的内容弹出堆栈后
2.17~2.18 略。
第三章 80x86 指令系统和寻址方式
注意:编写程序题答案仅供参考,答案可能不唯一。
3.1 填空题
(1) _操作码_、_操作数_
(2) _SI_、_DI_、_BX_、_DS_;_BP_、_SS_
(3) _BX_、_BP_,_SI_、_DI_,_BX_、_数据段_;_BP_、_堆栈_
(4) _1_、_0_
(5) _AX_、_AL_、_AH_
3.2 选择题
DBBDD DCDAC
3.3
(1) 立即数寻址
(2) 基址变址寻址
(3) 寄存器寻址
(4) 寄存器相对寻址
(5) 直接寻址
(6) 比例变址寻址
(7) 寄存器寻址
(8) 寄存器间接寻址
(9) 立即寻址
(10) 比例变址寻址
(11) 直接寻址
3
(12) 相对基址变址寻址
(13) 寄存器相对寻址
(14) 比例变址寻址
(1) AX=2000H
(2) AX=2100H
(3) AX=7050H
(4) AX=3010H
(5) AX=5030H
(6) AX=7050H
(7) AX=6040H
(8) AX=4020H
(9) AX=0070H
(10) EAX=70503010H
(1) × 不能为 DS 赋值
(2) × 立即数不能为目的操作数
(3) × 类型不匹配
(4) √
(5) × 不匹配
(6) × 类型不匹配
(7) × 超出数的表示范围
(8) × 不能为 CS 赋值
(9) × 只能是字或双字
(10) × 操作数不能同时是内存操作数
3.4
3.5
3.6
(1) IP=4000H
(2) IP= 2211H,CS=当前段基址
(3) IP=3322 H,CS=当前段基址
(4) IP=5544H,CS=当前段基址
(5) IP= 2211H,CS=4433H
(6) IP= 3322 H,CS=5544H
3.7 答:AX 相同,第一条指令是立即寻址;第二条指令是存储器直接寻址
3.8 AX=3344H,DX=1122H
SP→
44H
33H
22H
11H
20FFCH
20FFDH
20FFEH
20FFFH
SP→
21000H
执行指令前、后
执行压栈指令后
3.9
MOV DX, WORD PTR DATA1+2
4
MOV AX, WORD PTR DATA1
ADD AX, WORD PTR DATA2
ADC DX, WORD PTR DATA2+2
MOV WORD PTR DATA3, AX
MOV WORD PTR DATA3+2, DX
3.10
(1) MOV AL,Y
SUB AL,Z
ADD AL,X
MOV W,AL
(2) MOV AX, Y
ADD AX, 10
SUB X, AX
MOV BX, Z
ADD BX, 100
SUB X, BX
MOV AX, X
MOV W, AX
(3) MOV AX,X
MUL Y
SUB AX,10
SBB DX,0
DIV Z
MOV W1,AX
MOV W2,DX
(4) MOV AX,X
SUB AX,Y
CWD
MOV BX,100
IDIV BX
ADD AX,200
IMUL Z
MOV WORD PTR W, AX
MOV WORD PTR W+2, DX
3.11
(1) MOV AL, 0FFH
AND AL, 0FCH
(2) MOV AL,00H
OR AL,18H
(3) MOV BL, 0FFH
XOR BL, 30H
(4) MOV CH,0
MOV CL,BL
MOV AH,AL
5
MOV AL,0
OR CX,AX
或
MOV CL,8
SHL AX,CL
MOV BH,0
OR AX,BX
MOV CX,AX
(5) MOV AX,X1
MOV CL,4
ROL/ROR AX,CL
MOV X1,AX
3.12 (略)
3.13
(1) MOV AX, 0
(2) SUB AX, AX
(3) XOR AX, AX
(4) AND AX, 0
(5) MOV CL, 16
SHR AX, CL
3.14 (略)
3.15
(1) AX=16H,CF=1
(2) AX=16CH,CF=0
(3) AH=16H,CF=1
(4) AX=0C016H,CF=1
(5) AX=0C016H,CF=1
(6) AX=016CH,CF=0
(7) AX=016CH,CF=0
(8) AX=0B6H,CF=0
3.16
MOV AL, 10010110B
MOV BH, AL
MOV CL, 4
SHR BH, CL
AND AL, 0FH
MOV BL, AL
3.17 AX=3344H,BX=1122H
3.18 AX=1020H,BX=0CDEFH
3.19 AX=0,ZF=1
6
第四章 汇编语言程序结构
注意:编写程序题答案仅供参考,答案可能不唯一。
4.1 选择题
AADCD CD
4.2 (略)
4.3 (略)
4.4 LEN1 = VAR2-VAR1 = 8,是 VAR1 的字节个数。
LEN2 = $-VAR1 = 12= 0CH,为 VAR1 和 VAR2 的字节个数。
4.5
4.6
(1) ×不匹配
(2) √
(3) ×Y3 是符号常量,不能做目的操作数
(4) ×不匹配
(5) ×源和目的操作数不能同时为内存操作数
(6) √
(1)AL=98H
(2)AL=0
(3)AX=0200H
(4)BX=1234H
(5)EAX=00120098H
(6)CL=12H
4.7 (略)
4.8
(1) MOV AX,SEG STRING1
MOV DS,AX
(2) MOV BX,OFFSET STRING2
(3) MOV CX,STRING2-STRING1
(4) MOV AL,STRING1+3
(5) MOV AX,STRING2+4
4.9
DATA SEGMENT
VAR1 DB ’HELLO!’
VAR2 DW 1,2
VAR3 DW NEXT
VAR4 DD EXIT
VAR5 DW VAR1
VAR6 DD VAR2
VAR7 DW $
DATA ENDS
4.10
7
(1)AX=1 (2)AX=2 (3)AX=1 (4)AX=10 (5)AX=10 (6)AX=40
4.11
(1)AX=0B00H
(2)BX=0200H
第五章 顺序、分支和循环程序设计
注意:编写程序题答案仅供参考,答案可能不唯一。
5.1 选择题
ACDD DBDD
5.2
MOV AX,0
LEA BX,BUF1
MOV CX,10
LOP1:ADD AL,___[BX]___
LOOP LOP1_____
ADC AH,0
INC BX
_
MOV DL,10
DIV DL
MOV RESULT,__AL__
HLT
___BUF2[BX]___,_ _JAE/JNB___,__ BUF2[BX]___
5.3
5.4 (1)统计 AX 中“1”的个数和“0”的个数
(2)BL=7,DL=9,AX=0000H
5.5
LEA SI,BUFFER
LEA DI,RESULT
___MOV CX,10___
L1: MOV DL,[SI]
MOV AL,DL
PUSH CX
MOV CL,4
____SHR AL,CL___
POP CX
MOV [DI],AL
INC DI
____AND DL,0FH___
MOV [DI],DL
INC DI
INC SI
LOOP L1
HLT
8