第一章 基础知识
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 (2)-45 10101101B 11010010B 11010011B (3)-98 11100010B 10011101B 10011110B (4)-128 10000000B 11111111B 10000000B (5)0 00000000B 00000000B 00000000B (6)-1 10000001B 11111110B 11111111B 原码 00100011B 反码 00100011B 补码 00100011B
1.10 (1)带符号数 = 不带符号数 = 28432
(2)带符号数 = -32768,不带符号数 = 32768 (3)带符号数 = -15659,不带符号数=49877 (4)带符号数=-1,不带符号数=65535 1.11 (1)64H,100 (2)8BH,-11 (3)08H,8 (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 56H 30001H 32H 30002H 54H 30003H 10H 30004H 00H 30005H 78H
2.14 (10002H)=50H,(10000H)=7090H,(10001H)=1030 5070H 2.15 物理地址=30400H;
同一物理地址还有其他逻辑地址: 2F3F:1010H 2F40:1000H 2F41:0FF0H ……
2
2.16
SP→ 72H 1000:00FCH 61H 1000:00FDH 80H 1000:00FEH
50H 1000:00FFH SP→ 1000:0100H 1000:0100H
(1) 压入堆栈前 (2) 将数据5080H、6172H压入堆栈后
SP→ 80H 1000:00FEH 50H 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) 比例变址寻址 3.4
(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 3.5
(1) × 不能为DS赋值
(2) × 立即数不能为目的操作数 (3) × 类型不匹配 (4) √
(5) × 不匹配 (6) × 类型不匹配
(7) × 超出数的表示范围 (8) × 不能为CS赋值 (9) × 只能是字或双字
(10) × 操作数不能同时是内存操作数 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 20FFCH
33H 20FFDH
22H 20FFEH
11H 20FFFH
21000H SP→
执行压栈指令后 执行指令前、后
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
(1) ×不匹配 (2) √ (3) ×Y3是符号常量,不能做目的操作数 (4) ×不匹配 (5) ×源和目的操作数不能同时为内存操作数 (6) √ 4.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]___ ADC AH,0 INC BX
_ LOOP LOP1_____ MOV DL,10 DIV DL
MOV RESULT,__AL__ HLT
5.3 ___BUF2[BX]___,_ _JAE/JNB___,__ BUF2[BX]___ 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
5.6 从键盘接收的数(0~9)进行累加,累加结果在DX中;当键入?$?结束 5.7~5.19 略。
第六章 子程序设计
略。
第七章 高级汇编技术
7.1 略。 7.2 略。
7.3 (1)× 被乘数是8位,乘数不应是16位
(2)× MUL指令源操作数不能是立即数 (3)√ (宏展开略。) (4)√ (宏展开略。) 7.4~7.18 略。
第8章 输入/输出
8.1 填空题
1. CPU与外设之间的数据传送方式有_程序直接控制_、_中断传送 和_直接存储器存取_。 2. 接口电路中的I/O端口可分为_数据__端口、__状态__端口和__控制_端口三类。 3. 输入/输出指令采用间接寻址时,使用的间址寄存器是__DX______。 4. 8086/8088CPU的I/O地址空间具有___64K_____个8位端口地址。
5. 8086/8088CPU的I/O指令,采用直接寻址时可访问的地址空间为___0~__256___,采
用间接寻址时可访问的地址空间为____0~65535_______。 6. 8086的中断源可分为____内部___和___外部________两类。
7. 8086CPU的外部中断可分为___可屏蔽中断___和__不可屏蔽中断__两类。
8. 在80X86中,规定中断优先级次序(从高到低)依次为_除法出错_、__不可屏蔽中断、
可屏蔽中断、单步中断。
9. BIOS键盘中断类型号为_16H_,它在中断向量表中的物理地址为_58H_______。 10. BIOS显示中断类型号为__10H____,在内存物理地址为_47560H__处,存有此中断
处理程序的入口地址。IP=[4×10,4×10+1],CS=[4×10+2,4×10+3]
IP=[40H,41H]=[4140H],CS=[42H,43H] =[4342H] 物理地址=4344H ×16+4140H= 47560H
11.执行IRET指令时,会依次将__IP______、___CS_____、____FLAGS____弹出堆栈。 12.可用DOS功能调用INT 21H的功能AH=_25H_______来设置中断向量,用功能
AH=__35H______来获取中断向量。
13.中断类型码为20H的中断,其服务程序的入口地址一定存放在80H,81H,82H,83H.四
个连续的单元中,若这四个单元中的内容为12H、34H、56H、78H,则其服务程序的入口地址为__7856:3412______________。
9
IP=[4×20,4×20+1],CS=[4×20+2,4×20+3] IP=[80H,81H]=[8180H],CS=[82H,83H] =[8382H] 物理地址=8384H ×16+8180H= H
14.驻留程序通常分为两部分:___________部分和___________部分。 15.显示卡支持___________和___________两种显示方式。 16.显示字符有两种方法,一种是___________________,另一种是___________________。
8.2 选择题
1. CPU响应中断请求和响应DMA请求的本质区别是(B)
A.中断响应靠软件实现 B.响应中断时CPU仍控制总线,而响应DMA请求时让出总线 C.速度慢 D.控制简单
2. 下列中断源中,中断优先级最高的是(),优先级最低的是
A.单步中断 B.不可屏蔽中断 C.软中断INT N D.可屏蔽中断 3. 8086/8088CPU响应可屏蔽中断的条件是
A.开中断 B.中断请求未被屏蔽 C.当前指令结束 D.前三个条件都具备 4. 在中断服务程序中,保存现场后,通常要有开中断指令STI,目的是允许CPU响应( ) A.同级中断 B.不可屏蔽中断 C.较高级中断 D.较低级中断 5. 显示字符时,采用的显示分别率一般为
A.40列×25行 B.40列×30行 C.80列×25行 D.80列×30行
8.3 判断题(判断对错,错误的说明原因)
1. OUT [DX],AL;错,目的操作数DX 2. OUT DL,AL;错,目的操作数DX
3. IN BL,DX;错,目的操作数AL,AX,EAX 4. OUT DX,AX;对
5. IN AX,[BX] 错,源操作数DX
10