一、选择题(20分,在每小题的4个备选答案中选出一个正确的答案编号填写在该题空白处,每题2分)
1. 指令MOV DX,[BX]的寻址方式是 D 。
(A)立即寻址 (B)直接寻址 (C)寄存器寻址 (D)寄存器间接寻址 2. 若AL的内容为3FH,执行SHL AL,1指令后,AL的内容为 A 。 (A)7EH (B)1FH (C)9FH (D)7FH 解析:shl al ,1 即目的操作数各位左移一次,移动一次,相当于将目的操作数乘以2。3fh=63 63*2=126 126=7eh 故选A
3. 属于在工作中需定时刷新的存储器的芯片是 B 。 (A)SRAM (B)DRAM (C)EEPROM (D)EPROM 4. 某EPROM芯片上有19条地址线A0~A18,它的容量为 C 。 (A)128K (B)256K (C)512K (D)1024K 5. 8086/8088CPU的SP寄存器是多少位的寄存器 B 。 (A)8位 (B)16位 (C)24位 (D)32位
6. 在STOSB指令执行的时候,隐含着寄存器的内容作为操作数的偏移地址,
该寄存器是 D 。
(A)SP (B)BX (C)SI (D)DI
解析:stos数据串存储指令 功能:将累加器al或ah中的一个字或字节,传送到附加段中以di为目标指针的目的串中,同时修改di,以指向串中的下一个单元。
7. 8255工作在方式0时,下面哪种说法不正确 C 。 (A)A口输入无锁存能力 (B)A、B口输出有锁存能力
(C)C口输入有锁存能力 (D)A、B、C三个口输出均有锁存能力 解析:对于方式0,规定输出信号可以被锁存,输入不能锁存 8. 采用DMA方式来实现输入输出是因为它 A 。
(A)速度最快 (B)CPU可不参与操作 (C)实现起来比较容易 (D)能对突发事件做出实时响应
9. 工作在最小模式下,8086/8088CPU芯片中,将地址信号锁存的信号是
C 。
(A)DT/R (B)DEN (C)ALE (D)AEN 10. 在LOOP指令执行的时候,隐含着对计数器减1的操作,该计数器是用寄存
器 C 。
(A)AX (B)BX (C)CX (D)DX
解析:loop:循环指令。 指令执行前必须事先见重复次数放在cx寄存器中,每执行一次loop指令,cx自动减1。 二、填空题(每小题2分,共10分)
1. 两个无符号数相等,该两数相减后ZF标志= 1 。解析:zf:
全零标志位。本次运算结果为0时,zf=1,否则zf=0。
2. 执行LODSB后,SI的内容较该指令执行前增加1,说明DF=
0 。
1 / 12
3. DMA控制器8237共有 4 个相互的DMA通道。 4. 8086/8088断点中断的向量码是 03H 。 5. 利用8253产生对称的方波,应用其工作方式 3 。解析:8253
的工作方式3为方波发生器。
三、判断题(认为正确的在题后 打 “√”号,错误的打“×”号。并写
出正确的内容,每题2分,共10分)
1. 8086/8088CPU复位启动地址为0FFFFH X 0FFFF0H 。 2. +128的16位补码是1111 1111 0000 0000B 反码是1111 1110 1111 1111 X 0000 0001 0000 000B 。
3. 程序段开始执行之前,(CS)=97F0H,(IP)=1B40H,该程序段启动
执行指令的实际地址是99A40H 对 。
4. 异步串行通信在传送每一个数据时,传送出的第一位一定是一个低电平
的传送位 对 。 5. 8086/8088CPU响应中断时,CPU的硬件只保护CS和IP,其余内部寄存
器应由程序员编程保护 X F CS IP 。
四、简单回答题(每小题4分,共16分)
1. 说明8086/8088CPU如何判别两个无符号数的大小。 将这两个无符号数相减(或比较),若CF=0,则说明被减数大二减数小。若
CF=1,则说明减数大而被减数小。若ZF=1,二者相等
2. 8250芯片上有3条地址线A0~A2,试问该芯片占用多少个接口地址? 3条地址线有23=8种编码,∴8250最多占有8个接口地址 3. 试叙述REP MOVSB的执行过程。
将DS:[SI]所决定的内存一个字节传送到ES:[DI]所决定的内存单元中, 同时根据DF是0还是1,决定分别对SI、DI+1或-1。然后CX减1,若(CX)=0退出REP,否则重复传送操作,循环至(CX)=0为止 4. 动态存储器DRAM最重要的一个特点—动态的含义是什么? 其含义就是要对动态存储器定时进行刷新 五、程序阅读题(每小题5分,共20分)
1. DATA SEGMENT
AREA1 DB 100 DUP(11H) AREA2 DB 100 DUP(22H) DATA ENDS
CODE SEGMENT ASSUME CS:CODE,DS:DATA,ES:DATA MAIN PROC FAR START: PUSH DX XOR AX,AX PUSH AX MOV AX,DATA MOV DS,AX MOV ES.AX CLD MOV SI,OFFSET AREA1
2 / 12
MOV DI,OFFSET AREA2 MOV CX,100 REP MOVSB
RET MAIN ENDP CODE ENDS END START
指出上述程序指令执行后,AREA1、AREA2两个数据块的内容。 AREA1、AREA2两个数据块内容各100(共200)个字节全变为11H 2. 下述程序段执行后,寄存器CX,SI的内容是多少?
ARRY DW 20H DUP(5)
┆ XOR AX,AX MOV CX,LENGTH ARRY MOV SI, SIZE ARRY- TYPE ARRY 答:(CX)=20H;(SI)=40H-2=3EH
3. MOVDATA MACRO SN,DN,CN MOV SI,OFFSET SN MOV DI,OFFSET DN MOV CX,CN REP MOVS DN,SN ENDM 叙述上述宏指令的的功能
答:清零DF后,执行本宏指令实现以SN为首址的源数据块,到以DN为首址的
目的数据块的数据传送,传送的数据块长度为CN
4. 已知数据段DATA的段地址从40000H开始,分析伪指令后面的各种传
送指令执行后各寄存器的内容。 DATA SEGMENT V1 DB 2AH,3FH V2 DW 2A3FH,3040H V3 DW 20 DUP(?) DATA ENDS
1) MOV AX,SEG V1
MOV BX,SEG V3
(AX)=4000H;(BX)=4000H 2) MOV AX,OFFSET V1 (AX)=0
3) MOV CX,TYPE V3 CX)=2
4) MOV AH,LENGTH V2 (AH)=1
六、编写程序题(24分)
1. 试编写一程序,把X和Y中的小者存于LIT单元,若X=Y,则把其中之
一存入LIT单元。(7分)
3 / 12
解:DATA SEGMENT X DW ? Y DW ? LIT DW ? DATA ENDS CODE SEGMENT
ASSUME CS:CODE,DS:DATA START PROC FAR
PUSH DS MOV AX,0 PUSH AX
MOV AX,DATA MOV DS,AX MOV AX,X CMP AX,Y
JC STOLIT;无符号数判断,有符号数用JLE MOV AX,Y STOLIT: MOV LIT,AX RET START ENDP CODE ENDS
END START
2. 试编写一个程序段,能完成下列数学表达式的功能。X为字节变量。(7
分) -2 (X≤-2) X= 0 (-2 DATA SEGMENT X DB -3 DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START PROC FAR PUSH DS MOV AX,0 PUSH AX MOV AX,DATA MOV DS,AX MOV AL,X CMP AL,2 JGE SETX2 4 / 12 CMP AL,-2 JLE SETX_2 MOV AL,0 JMP STOX SETX2: MOV AL,2 JMP STOX SETX_2: MOV AL,-2 STOX: MOV X,AL RET START ENDP CODE ENDS END START 3. 已知下面数据段中数据缓存区AREA可容纳1000H个字节变量,其中0~ 7FFH单元已经有数据,试编写一段程序,把AREA中0~7FFH单元的数据顺序传送到AREA缓存区中的200H~09FFH单元中。(10分) DATA SEGMENT AREA DB 1000H DUP(?) DATA ENDS 3、(10分) 解: DATA SEGMENT AREA DB 1000H DUP(?) DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA,ES:DATA START PROC FAR PUSH DS MOV AX,0 PUSH AX MOV AX,DATA MOV DS,AX MOV ES,AX STD MOV SI,OFFSET AREA+7FFH MOV DI,OFFSET AREA+9FFH MOV CX,800H REP MOVSB RET START ENDP CODE ENDS END START 5 / 12 √ √ 2 一、选择题(20分,在每小题的4个备选答案中选出一个正确的答案编号填写在该题空白处,每题2分) 1. 指令ADD AL,5FH的寻址方式是 B 。 (A)寄存器,寄存器寻址 (B)寄存器,立即数寻址 (C)存储器,寄存器寻址 (D)寄存器,存储器寻址 2. 对AL寄存器的内容进行清零操作的为 B 。 (A)INC AL (B)AND AL,0 (C)NOT AL (D)XOR AL,0 3. 属于光可擦除可编程的存储器的芯片是 D 。 (A)SRAM (B)DRAM (C)EEPROM (D)EPROM 4. 某RAM芯片上有10条地址线A0~A9,它的容量为 B 。 (A)128K (B)1K (C)512 (D)1024K 5. 8086/8088CPU的SP寄存器是多少位的寄存器 B 。 (A)8位 (B)16位 (C)24位 (D)32位 6. 在STOSB指令执行的时候,隐含着寄存器的内容作为操作数的偏移地址, 该寄存器是 D 。 (A)SP (B)BX (C)SI (D)DI 7. 8255工作在方式1时,下面哪种说法不正确 D 。 (A)A口输入有锁存能力 (B)A、B口输出有锁存能力 (C)B口输入有锁存能力 (D)B口输入无锁存能力 8. 8086/8088CPU芯片的地址线为 B 。 (A)16条 (B)20 条 (C) (D) 24条 9. 在DEBUG命令中,显示 DS:0000 内容的命令为 A 。 (A)D DS:0000 (B)E DS:0000 (C)G DS:0000 (D) T DS:0000 10. 在LOOP指令执行的时候,隐含着对计数器减1的操作,该计数器是用寄存 器 C 。 (A)AX (B)BX (C)CX (D)DX 二、填空题(每小题2分,共10分) 1. AX与BX中数值相等,CMP AX,BX指令执行后ZF标志= 1 。 2. 执行LODSW后,SI的内容较该指令执行前增加2,说明DF= 0 。 3. 8253共占用 4 个端口地址。 4. 8086/8088溢出中断的向量码是 04H 。 5. 你所知道的可用于异步串行通信接口芯片是 8250 。 三、判断题(认为正确的在题后 打 “√”号,错误的打“×”号。并写 出正确的内容,每题2分,共10分) 1. 8086/8088CPU的内存地址不能作接口地址使用 。 2. 十进制数50转换成二进制数是01010000B 。 6 / 12 3. 利用XOR指令可以使AX寄存器清零 。 4. 逻辑地址为97F0H:1B40H的物理实际地址是99A40H 。 5. 01111110B的反码是10000001B 。 四、简单回答题(每小题4分,共16分) 1. 说明如何把由A1.ASM,A2.ASM,A3.ASM三个模块组成的汇编语言源 程序,转换成与之对应的一个“*.OBJ”文件,再进一步转换成“*.EXE”文件。 2. 动态存储器DRAM最重要的一个特点—动态的含义是什么? 3. 简单叙述异步串行通信的数据格式(可画图表示) 4. 试叙述串搜索指令REPNZ SCASB的执行过程。 五、程序阅读题(每小题5分,共20分) 1. DATA SEGMENT SUM DB ? DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA MAIN PROC FAR START: PUSH DX XOR AX,AX PUSH AX MOV AX,DATA MOV DS,AX MOV AL,35H;1)此时AL中内容? ADD AL,45H;2)此时AL中内容? DAA ;3)此时AL中内容? MOV SUM,AL RET MAIN ENDP CODE ENDS END START 指出上述程序指令执行后,SUM字节单元的内容。 2. 设BX指向数据段X1字节内存单元,X2是X1后续字节单元,BIG也 是一个节数单元。 MOV AL,[BX] ;1)此时AL中内容? INC BX ;2)此时BX指向何字节单元? CMP AL,[BX] JAE BIGER EXCH: MOV AL,[BX] ;3)如执行到此时,X1与X2那个大? BIGER: MOV BIG,AL ; 上述程序执行后BIG中是什么数? 3. 已知数据段DATA的段地址从10000H开始,分析伪指令后面的各种传 送指令执行后各寄存器的内容。 DATA SEGMENT V1 DW 2A3FH,3F40H 7 / 12 V2 DB 2AH,30H V3 DW 4 DUP(?) DATA ENDS 1) MOV AX,SEG V1 MOV BX,SEG V3 2) LEA AX, V1 3) MOV CX,TYPE V3 4) MOV AH,SIZE V2 4. 下述程序执行后DI,SI的内容是多少? DATA SEGMENT X0 DB 20H DUP(?) X1 DB 20H DUP(?) DATA ENDS ┋ MOV SI,OFFSET X0 LEA DI,X1 六、编写程序题(24分) 1 试编写一程序,完成1+2+3+…+100的运算,运算结果存储在SUM 字内存单元。(7分) 2 试编写一个程序,其功能是将一个字数组ARRAY中的正数分离出来存 储在PLUS开始的单元中。(10分) 3 已知下面数据段 DATA SEGMENT AREA0 DB 1000H DUP(?) AREA1 DB 1000H DUP(?) DATA ENDS 编写程序,把AREA0中字节单元清零,把AREA1中的字节单元设置成34H。(7分) 3 一、选择题(本题共10小题,每小题2分,共20分) 1. 字符“A”的ASCII代码是 。 (A)31H (B)0DH (C)20H (D)41H 2. 对AX寄存器内容进行减1操作的指令为 。 (A)DEC AX (B)OR AX,0 (C)XOR AX,AX (D)NOT AX 3. 静态存储器芯片符号是 。 8 / 12 (A)SRAM (B)DRAM (C)EEPROM (D)EPROM 4. 某RAM芯片上有10条地址线A0~A9,它的容量为 。 (A)128K (B)1024K (C) 1024 (D)512 5. 8086/8088CPU的DS寄存器是多少位的寄存器 。 (A)16位 (B)8位 (C)24位 (D)32位 6. 在DEBUG命令中,显示 DS:0000 内容的命令为 。 (A)D DS:0000 (B)E DS:0000 (C)G DS:0000 (D) T DS:0000 7. 关于8255工作方式,下面哪种说法不正确 。 (A)A、B口均可在方式0方式下工作 (B)A、B口均可在方式1方式下工作 (C)只有A口可在方式2方式下工作 (D)A、B口均可在方式2方式下工作 8. 在DEBUG环境中,FLAGS中的状态标志CF为1时用符号 表示。 (A)NC (B)ZR (C)CY (D)PO 9. 指令MOV AL,5FH的寻址方式是 。 (A)寄存器,立即数寻址 (B)寄存器,寄存器寻址 (C)存储器,立即数寻址 (D)寄存器,存储器寻址 10. 在LOOP指令执行的时候,隐含着对计数器减1的操作,该计数器使用寄存 器 。 (A)AX (B)BX (C)CX (D)DX 二、填空(本题共5小题,每小题2分,共10分) 1、AX中数值为8000H BX中数值为8001H,SUB AX,BX指令执行后CF标志 = 。 2、执行LODSB后,SI的内容较该指令执行前增加1,说明DF = 。 3、8255共占用 个端口地址。 4、8086/8088 NMI的中断类型号是 。 5、 你所知道的可编程定时器/计数器芯片是 。 三、判断题(认为正确的在题后 打 “√”号,错误的打“×”号。并写出正确的内容,每题2分,共10分) 9 / 12 1. 8086/8088CPU的内存地址能作接口地址使用 。 2. 十进制数40转换成二进制数是01000000B 。 3. 利用CMP类指令可以使AX寄存器清零 。 4. 动态存储器DRAM最重要的一个特点—动态的含义是不需要刷新 。 5. 01111111B的反码是10000000B 。 四、简单回答题(每小题3分,共12分) 1. 说明如何把由A.ASM,B.ASM二个模块组成的汇编语言源程序,转换成 与之对应的一个“*.OBJ”文件,再进一步转换成“C.EXE”文件。 2. 逻辑地址为97F0H:1B40H的物理实际地址是是什么? 3. 简单叙述异步串行通信的数据格式(可画图表示) 4. 试叙述串搜索指令REPZ SCASB的执行过程。 五、指令、程序阅读题(共20分) 1.已知 8086 中一些寄存器的内容和一些存储单元的内容如图五-1所示,试指出下列每条指令执行后,AX中的内容(即(AX)=?)。 (8分) (1)MOV AX,2010H (2) MOV AX,BX (3) MOV AX,[1200H] (4) MOV AX,[BX] (5) MOV AX,[BX+1100H] (6) MOV AX,[BX+SI+1000H] (7) MOV AX,SI (8) LODSW CPU BX SI DS 0100H 0102H 4000H 40100H 41200H M 12H 34H 56H 78H ┇ NUM1 M 48H 81H 16H 28H NUM2 58H A2H 52H 84H 2AH 10 / 12 4CH B7H 65H SUM 图五-1 图五-2 2.已知存储器数据段中的数据如图五-2所示。下列程序段的运行结果是什么? (6分) MOV ADD MOV MOV ADC MOV AX,NUM1;AX= AX,NUM2;AX= SUM,AX ;SUM= AX,NUM1+2;AX= AX,NUM2+2;AX= SUM+2,AX ;[SUM+2]= 3.有如下程序段,分析“{”所括指令执行后,指令中对应寄存器内容。 (6分) DATA SEGMENT NUM1 DW 0004H NUM2 DW 5678H NUM3 DW 78A5H COUNT EQU $-NUM1 DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA MAIN PROC MOV AX,DATA MOV DS,AX MOV BX,NUM1 ;BX= LEA SI,NUM1 ;SI= MOV AX,NUM2 ;AX= 11 / 12 MOV DX,OFFSET NUM2 ;DX= MOV CX,COUNT ;CX= MOV AX,[BX] ;AX= MAIN ENDP CODE ENDS 六、编写程序题(28分) 1.试编写程序,完成运算Y=A+B-C。 (8分) DATA SEGMENT A DW 2450H B DW 21H C DW 1120H Y DW ? DATA ENDS 2.试编写一个程序段,能完成下列数学表达式的功能。X、Y为无符号字节变量。(9分) 46(X>45) Y= 0(X=45) 44(X<45) DATA SEGMENT X DB 68H Y DB ? DATA ENDS 3.试编写一程序计算求级数12+32+52+……的前几项和刚大于600的项数(11分) 12 / 12 因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- dfix.cn 版权所有 湘ICP备2024080961号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务