收藏 分销(赏)

2021年微机原理与接口技术试题库含答案.doc

上传人:二*** 文档编号:4510281 上传时间:2024-09-26 格式:DOC 页数:42 大小:130.54KB
下载 相关 举报
2021年微机原理与接口技术试题库含答案.doc_第1页
第1页 / 共42页
亲,该文档总共42页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、三、选取题1、在计算机内部,一切信息存取、解决和传送都是以 D 形式进行。A)EBCDIC码 B)ASCII码 C)十六进制编码 D)二进制编码2、与十进制数56等值二进制数是 A 。A)111000 B)111001 C)101111 D)110110四、是非判断题1、在第三代计算机期间浮现了操作系统。 ( )2、对于种类不同计算机,其机器指令系统都是相似。( )3、在计算机中,数据单位bit意思是字节。 ( )1. 微解决器,微型计算机和微型计算机系统三者之间有何区别?答:微解决器即CPU,它涉及运算器、控制器、寄存器阵列和内部总线等某些,用于实现微型计算机运算和控制功能,是微型计算机核心

2、;一台微型计算机由微解决器、内存储器、I/O接口电路以及总线构成;微型计算机系统则涉及硬件系统和软件系统两大某些,其中硬件系统又涉及微型计算机和外围设备;由此可见,微解决器是微型计算机重要构成某些,而微型计算机系统又重要由微型计算机作为其硬件构成。2. CPU在内部构造上由哪几某些构成?CPU应具备哪些重要功能?答:CPU在内部构造上由运算器、控制器、寄存器阵列和内部总线等各某些构成,其重要功能是完毕各种算数及逻辑运算,并实现对整个微型计算机控制,为此,其内部又必要具备传递和暂存数据功能。3. 累加器和其他通用寄存器相比有何不同?答:累加器是通用寄存器之一,但累加器和其他通用寄存器相比又有其独

3、特之处。累加器除了可用做通用寄存器存储数据外,对某些操作,普通操作前累加器用于存储一种操作数,操作后,累加器用于存储成果。 4. 微型计算机总线有哪几类?总线构造特点是什么?答:微型计算机总线涉及地址总线、数据总线和控制总线三类,总线构造特点是构造简朴、可靠性高、易于设计生产和维护,更重要是便于扩充。 6. 计算机I/O接口有何用途?试列出8个I/O接口。答:计算机I/O接口是连接计算机和外部设备纽带和桥梁,它重要用于协调和控制计算机与外设之间信息流通和互换。例如:串行通讯口(COM口)、并行打印机口、软盘驱动器接口、硬盘驱动器接口、光驱接口、显示屏接口、音响设备接口、其他通用设备接口(USB

4、、SCSI等)。7. 当前,计算机主板上普通都涉及哪些I/O接口?I/O接口卡如何与主板相连?答:当前,计算机主板上普通涉及串行通讯口、并行打印口、软盘驱动器接口、硬盘驱动器接口、光驱接口、USB接口等。象显示屏适配器、网卡、modem卡等I/O接口卡普通通过总线插槽与主板相连。8. 简述系统总线,AGP总线,PCI总线及ISA总线作用。答:系统总线是CPU与存储器及桥接器之间传递信息通道,AGP总线专门用与连接CPU与显示屏适配器,PCI总线普通用于连接某些高速外设接口作为高速外设与CPU或内存互换信息通道,而ISA总线普通用于连接某些非高速外设接口作为非高速外设与CPU或内存互换信息通道。

5、9. 试阐明计算机顾客,计算机软件,计算机硬件三者互有关系。答:计算机顾客,计算机软件系统,计算机硬件系统共同构成一种计算机应用系统,三者在该系统中处在三个不同层次。计算机顾客处在最高层,计算机软件处在中间层,计算机硬件系统处在最下层。在这里计算机顾客是系统主宰,她们通过软件系统与硬件系统发生关系,指挥计算机硬件完毕指定任务。即,计算机顾客使用程序设计语言编制应用程序,在系统软件干预下使用硬件系统进行工作。11. 存储单元选取由什么信号控制?读、写靠什么信号区别?答:存储单元选取由地址信号控制,而对存储单元进行读操作还是写操作则要靠读、写信号区别。4.若用一种字节来表达带符号数,判断下列各运算

6、在机内进行时与否会产生溢出,写出判断过程。 A. 5BH+32H; B. -08H-15H; C. -51H+(-3DH); D. 2DH+3CH答:A. 产生溢出,5BH=01011011B其补码表达机器数为:01011011 32H=00110010B其补码表达机器数为:00110010 相加成果为:10001101数值最高位向符号位进位,但符号位向前无进位,故产生溢出。B. 不产生溢出,-08H=-00001000B其补码表达机器数为:11111000 -15H=-00010101B其补码表达机器数为:11101011 相加成果为: 数值最高位向符号位进位,符号位同步也向迈进位,故不产生

7、溢出. C.产生溢出,-51H=-01010001B其补码表达机器数为:10101111 -3DH=-00111101B其补码表达机器数为:11000011 相加成果为: 数值最高位向符号位无进位,但符号位向迈进位,故产生溢出. D.不产生溢出,2DH=00101101B其补码表达机器数为:00101101 3CH=00111100B其补码表达机器数为:00111100 相加成果为:01101001 数值最高位向符号位无进位,符号位向前也无进位,故不产生溢出。6.详细论述总线缓冲器作用。答:总线缓冲器作用重要是控制各路数据在总线上交叉传送避免互相冲突,当几路数据都要向总线上传送时,就通过各路缓

8、冲器来解决,当一路传送时,缓冲器使其他各路数据与总线断开。7.锁存器和寄存器有什么不同?答:锁存器与寄存器都是用来暂存数据器件,在本质上没有区别,但是寄存器输出端平时不随输入端变化而变化,只有在时钟有效时才将输入端数据送输出端(打入寄存器),而锁存器输出端平时总随输入端变化而变化,只有当锁存器信号到达时,才将输出端状态锁存起来,使其不再随输入端变化而变化。1.8086从功能上提成了EU和BIU两某些。这样设计长处是什么?答:老式计算机在执行程序时,CPU总是相继地完毕取指令和执行指令动作,即,指令提取和执行是串行进行。而8086CPU 在功能上提成了EU和BIU两某些,BIU负责取指令,EU负

9、责指令执行,它们之间既互相独立又互相配合,使得8086可以在执行指令同步进行取指令操作,即实现了取指令和执行指令并行工作,大大提高了CPU和总线运用率,从而提高了指令解决速度。2.8086 CPU中地址加法器重要性体当前哪里?答:地址加法器是8086 CPU总线接口单元中一种器件,在8086存储器分段组织方式中它是实现存储器寻址一种核心器件,地址加法器将两个16位寄存器中逻辑地址移位相加,得到一种20位实际地址,把存储器寻址空间从64K扩大到1M,极大地扩大了微型计算机程序存储空间,从而大大提高了程序运营效率。3.8086 CPU中有哪些寄存器?分组阐明用途。哪些寄存器用来批示存储器单元偏移地

10、址?答:8086 CPU中有8个通用寄存器AX、BX、CX、DX、SP、BP、SI、DI;两个控制寄存器IP、FL;四个段寄存器CS、DS、SS、ES。8个通用寄存器都可以用来暂存参加运算数据或中间成果,但又有各自专门用途。例如,AX专用做累加器,某些指令指定用它存储操作数和运算成果;CX为计数寄存器,在某些指令中做计数器使用;DX为数据寄存器;BX为基址寄存器,BP为基址指针,SI为源变址寄存器,DI为目变址寄存器,这4个寄存器在数据寻址中用来存储段内偏移地址(有效地址)或段内偏移地址一某些;SP为堆栈批示器,用来存储栈顶有效地址。两个控制寄存器用来存储关于状态信息和控制信息。例如,标志寄存

11、器FL用来存储状态标志和控制标志;而指令指针用来存储下一条要取指令有效地址。四个段寄存器用来存储段地址。例如,CS寄存器用来存储代码段段地址;DS寄存器用来存储数据段段地址;SS寄存器用来存储堆栈段段地址;ES寄存器用来存储扩展段段地址。4.8086系统中存储器逻辑地址由哪两某些构成?物理地址由何器件生成?如何生成?每个段逻辑地址与寄存器之间有何相应关系?答:8086系统中存储器逻辑地址由段地址(段首址)和段内偏移地址(有效地址)两某些构成;存储单元物理地址由地址加法器生成,寻址时,CPU一方面将段地址和段内偏移地址送入地址加法器,地址加法器将段地址左移4位并与段内偏移地址相加,得到一种20位

12、物理地址。数据段段地址在DS寄存器中,段内偏移地址也许在BX、BP、SI或DI寄存器中。代码段段地址在CS寄存器中,段内偏移地址在IP寄存器中。堆栈段段地址在SS寄存器中,段内偏移地址在SP寄存器中。扩展段段地址在ES寄存器中,段内偏移地址也许在BX、BP、SI或DI寄存器中。5.设CPU中各关于寄存器当前状况为:SS=0a8bH、DS=17ceH、CS=dc54H、BX=394bH、IP=2f39H、SP=1200H,BX 给出是某操作数有效地址,请分别写出该操作数、下一条要取指令及当前栈顶逻辑地址和物理地址。答:该操作数逻辑地址为DS:BX=17CE:394BH,物理地址=17CEH*10

13、H+394BH=1B62BH;下一条要取指令逻辑地址为CS:IP=DC54:2F39H,物理地址=DC54H*10H+2F39H=DF479H;当前栈顶逻辑地址=SS:SP=0A8B:1200H,物理地址=0A8BH*10H+1200H=0BAB0H。6.若DS=157DH时,某操作数物理地址是215FAH,当DS=18DEH时,该操作数物理地址是多少?答:该操作数段内偏移地址=该操作数物理地址-DS=215FAH-157D0H=BE2AH,故当DS=18DEH时,该操作数物理地址=DS*10H+BE2AH=18DE0H+BE2AH=24C0AH7.设 AX=2875H、BX=34DFH、SS

14、=1307H、SP=8H,依此执行 PUSH AX、PUSH BX、POP AX、POP CX后栈顶指针变为多少?AX=? BX=? CX=?答:当前栈顶指针=SS*10H+SP=13070H+8H=13078H,依此执行PUSH AX、PUSH BX、POP AX、POP CX后栈顶指针仍为13078H。但AX=34DFH,BX=34DFH,CX=2875H。1. 假定(BX)=637DH,(SI)=2A9BH,位移量D=3237H,试拟定在如下各种寻址方式下有效地址是什么?(1)及时寻址(2)直接寻址(3)使用BX寄存器寻址(4)使用BX间接寻址(5)使用BX寄存器相对寻址(6)基址变址寻

15、址(7)相对基址变址寻址 答:(1)及时数寻址有效地址是当前IP内容;(2)直接寻址,若使用位移量D=3237H进行,则有效地址为3237H;(3)使用BX寄存器寻址时,操作数在BX寄存器中,因而无有效地址;(4)使用BX间接寻址时,有效地址在BX寄存器中,即有效地址=637DH;(5)使用BX寄存器相对寻址有效地址=(BX)+D=637DH+3237H=95B4H;(6)基址变址寻址有效地址=(BX)+(SI)=637DH+2A9BH=8E18H;(7)相对基址变址寻址有效地址=(BX)+(SI)+D=C050H; 2. 写出把首地址为BLOCK字数组第6个字送到DX寄存器指令。规定使用如下

16、几种寻址方式:(1)寄存器间接寻址(2)寄存器相对寻址(3)基址变址寻址答:(1)使用寄存器间接寻址,把首地址为BLOCK字数组第6个字送到DX寄存器指令为: MOV BX,BLOCK ADD BX,12 MOV DX,BX(2)使用寄存器相对寻址,把首地址为BLOCK字数组第6个字送到DX寄存器指令为: MOV BX,BLOCK MOV DX,BX+12(3)使用基址变址寻址,把首地址为BLOCK字数组第6个字送到DX寄存器指令为: MOV BX,BLOCK MOV SI,12 MOV DX,BX+SI3. 既有(DS)=H,(BX)=0100H,(SI)=0002H,(0H)12H,(1H

17、)=34H,(2H)=56H,(3H)=78H,(21200H)=2AH,(21201H)=4CH,(21202H)=B7H,(21203H)=65H,试阐明下列各条指令执行完后AX寄存器内容。(1)MOV AX,1200H(2)MOV AX,BX(3)MOV AX,1200H(4)MOV AX,BX(5)MOV AX,BX+1100(6)MOV AX,BX+SI(7)MOV AX,BX+SI+1100答:(1)指令MOV AX,1200H执行完后AX寄存器内容为1200H; (2)指令MOV AX,BX执行完后AX寄存器内容为0100H; (3)指令MOV AX,1200H是将从物理地址=(

18、DS)*10H+1200H=21200H开始两个单元内容送AX,执行完后AX寄存器内容为4C2AH; (4)指令MOV AX,BX是将从物理地址=(DS)*10H+(BX)=0H开始两个单元内容送AX,故执行完后AX寄存器内容为3412H; (5)指令MOV AX,BX+1100是将从物理地址=(DS)*10H+(BX)+1100H=21200H开始两个单元内容送AX,故执行完后AX寄存器内容为4C2AH; (6)指令MOV AX,BX+SI是将从物理地址=(DS)*10H+(BX)+(SI)=2H开始两个单元内容送AX,故执行完后AX寄存器内容为7856H; (7)指令MOV AX,BX+S

19、I+1100是将从物理地址=(DS)*10H+(BX)+(SI)+1100H=21202H开始两个单元内容送AX,故执行完后AX寄存器内容为65B7H;4.假设已知(DS)=2900H,(ES)=2100H,(SS)=1500H,(SI)=00A0H,(BX)= 0100H,(BP)=0010H,数据段中变量名VAL偏移地址值为0050H,试指出下列源操作数字段寻址方式是什么?其物理地址值是多少? (1) MOV AX,0ABH (2) MOV AX,BX (3) MOV AX,100H (4) MOV AX,VAL (5) MOV AX,BX (6) MOV AX,ES:BX (7) MOV

20、 AX,BP (8) MOV AX,SI (9) MOV AX,BX+10 (10) MOV AX,VALBX (11) MOV AX,BXSI (12) MOV AX,BPSI答:(1)在指令 MOV AX,0ABH 中,源操作数字段寻址方式是及时数寻址,其物理地址值=(CS)*10H+(IP); (2)在指令 MOV AX,BX 中,源操作数字段寻址方式是寄存器寻址,操作数在BX中,无物理地址; (3)在指令 MOV AX,100H 中,源操作数字段寻址方式是直接寻址,其物理地址值=(DS)*10H+100 =29000H+100H=29100; (4)在指令 MOV AX,VAL 中,源

21、操作数字段寻址方式是直接寻址,其物理地址值=(DS)*10H+50H =29000H+50H=29050H; (5)在指令 MOV AX,BX 中,源操作数字段寻址方式是寄存器间接寻址,其物理地址值=(DS)*10H +(BX)=29000H+100H=29100H; (6)在指令 MOV AX,ES:BX 中,源操作数字段寻址方式是寄存器间接寻址,其物理地址值=(ES)*10H+(BX)=21000H+100H=21100H; (7)在指令 MOV AX,BP 中,源操作数字段寻址方式是寄存器间接寻址,其物理地址值=(SS)*10H +(BP)=15000H+10H=15010H; (8)在

22、指令 MOV AX,SI 中,源操作数字段寻址方式是寄存器间接寻址,其物理地址值=(DS)*10H +(SI)=29000H+0A0H=290A0H; (9)在指令 MOV AX,BX+10 中,源操作数字段寻址方式是寄存器相对寻址,其物理地址值=(DS)*10H+(BX)+0AH= 29000H+100H+0AH =2910AH; (10)在指令 MOV AX,VALBX 中,源操作数字段寻址方式是寄存器相对寻址,其物理地址值=(DS)*10H+(BX)+50H= 29000H+100H+50H= 29150H; (11)在指令 MOV AX,BXSI 中,源操作数字段寻址方式是基址变址寻址

23、,其物理地址值=(DS)*10H+(BX)+(SI) =29000H+100H+0A0H =291A0H; (12)在指令 MOV AX,BPSI 中,源操作数字段寻址方式是基址变址寻址,其物理地址值=(SS)*10H+(BP)+(SI)=15000H+10H+0A0H =150B0H5.分别指出下列指令中源操作数和目操作数寻址方式。 (1)MOV SI,200 (2)MOV CX,DATASI (3)ADD AX,BX+DI (4)AND AX,BX (5)MOV SI,AX (6)PUSHF答:(1)目操作数字段寻址方式是寄存器寻址,源操作数字段寻址方式是及时数寻址;(2)目操作数寻址方式

24、是寄存器寻址,源操作数寻址方式是寄存器相对寻址;(3)目操作数寻址方式是寄存器寻址,源操作数寻址方式是基址变址寻址;(4)目操作数寻址方式是寄存器寻址,源操作数寻址方式也是寄存器寻址;(5)目操作数寻址方式是寄存器间接寻址,源操作数寻址方式是寄存器寻址;(6)目操作数寻址方式是寄存器间接寻址,源操作数寻址方式是寄存器寻址;6.试述指令MOV AX,H和MOV AX,DS:H 区别。答:指令MOV AX,H是将及时数H送AX寄存器,而指令MOV AX,DS:H是将DS段有效地址为H两个单元内容送AX。7.写出如下指令中内存操作数所在地址。 (1)MOV AL,BX+5 (2)MOV BP+5,A

25、X (3)INC BYTE PTR SI+3 (4)MOV DL,ES:BX+DI (5)MOV BX,BX+SI+2答:(1)指令MOV AL,BX+5中内存操作数所在地址=(DS)*10H+(BX)+5; (2)指令MOV BP+5,AX中内存操作数所在地址=(SS)*10H+(BP)+5和(SS)*10H+(BP)+6; (3)指令INC BYTE PTRSI+3中内存操作数所在地址=(DS)+(SI)+3; (4)指令MOV DL,ES:BX+DI中内存操作数所在地址=(ES)*10H+(BX)+(DI); (5)指令MOV BX,BX+SI+2中内存操作数所在地址=(DS)*10H+

26、(BX)+(SI)+2和(DS)*10H+(BX)+(SI)+3;8.判断下列指令书写与否对的,如有错误,指出错在何处并用对的程序段(一条或多条指令)实现原错误指令(8)、(13)除外)盼望实现操作。 (1)MOV AL,BX (9)MOV ES,3278H (2)MOV AL,SL (10)PUSH AL (3)INC BX (11)POP BX (4)MOV 5,AL (12)MOV 1A8H,23DH (5)MOV BX,SI (13)PUSH IP (6)MOV BL,F5H (14)MOV AX,23DH (7)MOV DX,H (15)SHL AX,5 (8)POP CS (16)

27、MUL AX,BX答:(1)MOV AL,BX 错,源操作数为字类型,目操作数为字节类型,两者不一致。应改为:MOV AX,BX 或 MOV AL,BL ;(2)MOV AL,SL 错,SI寄存器不能分为高8位和低8位使用,即没有SL寄存器。应改为:MOV AX,SI(3)INC BX 错,未指定操作数类型。应改为:INC BYTE PTR BX (4)MOV 5,AL 错,目操作数使用了及时数,在指令中普通不容许。应改为:MOV DS:5,AL (5)MOV BX,SI 错,源操作数和目操作数均为内存单元,不容许。应改为:MOV AX,SI MOV BX,AX(6)MOV BL,F5H 错,

28、源操作数错,以AF开头数字前应加0。应改为:MOV BL,0F5H(7)MOV DX,H 对的。(8) POP CS 错,不能将栈顶数据弹至CS中。 (9)MOV ES,3278H 错,及时数不能直接送ES寄存器。应改为:MOV AX,3278HMOV ES,AX(10)PUSH AL 错,栈操作不能按字节进行。应改为:PUSH AX (11)POP BX 对的。(12)MOV 1A8H,23DH 错,源操作数是及时数,目操作数必要使用寄存器指出。应改为: MOV BX,1A8H MOV BX,23DH (13)PUSH IP 错,不能用IP寄存器做源操作数。(14)MOV AX,23DH 错

29、,不能用AX寄存器间接寻址。应改为:MOV BX,AX MOV BX,23DH(15)SHL AX,5 错,不能用不不大于己于1及时数指出移位位数。应改为:MOV CL,5SHL AX,CL(16)MUL AX,BX 错,目操作数AX是隐含,不能在指令中写出。应改为:MUL BX9.设堆栈指针SP初值为H,AX=3000H,BX=5000H,试问: (1)执行指令PUSH AX后 (SP)=? (2)再执行PUSH BX及POP AX后 (SP)=?(AX)=?(BX)=?答:(1)执行指令PUSH AX后 (SP)=H-2=1FFEH; (2)再执行PUSH BX及POP AX后 (SP)=

30、1FFEH,(AX)=5000H,(BX)=5000H10.要想完毕把H送1000H中,用指令:MOV 1000H,H与否对的?如果不对的,应用什么办法?答:把H送1000H中,用指令 MOV 1000H,H不对的,应改为:MOV AX,H MOV 1000H,AX11.如果想从200中减去AL中内容,用SUB 200,AL与否对的?如果不对的,应用什么办法?答:想从200中减去AL中内容,用SUB 200,AL不对的,应改为: MOV BL,200 SUB BL,AL12分别写出实现如下功能程序段 (5)将数据段中以BX为偏移地址持续四个单元内容颠倒过来答: (5) 将数据段中以BX为偏移地

31、址持续四个单元内容颠倒过来程序段是:MOV AL,BX ;数据段中BX为偏移地址字单元内容送AXXCHG AL,BX+3 ;数据段中BX+3为偏移地址字单元内容与AX内容互换MOV BX,AL ;数据段中BX+3为偏移地址字单元内容送BX为偏移地址字单元MOV AL,BX+1 ;数据段中BX+1为偏移地址字单元内容送AXXCHG AL,BX+2 ;数据段中BX+2为偏移地址字单元内容与AX内容互换MOV BX+1,AL ;数据段中BX+2为偏移地址字单元内容送BX+1为偏移地址字单元1.假设OP1,OP2是已经用DB定义变量,W_OP3和W_OP4是已经用DW定义变量,判断下列指令书写与否对的

32、?如有错误,指出错在何处?并写出对的指令(或程序段)实现原错误指令盼望实现操作(19)、(20)不改)。(1)PUSH OP1(2)POP W_OP4(3)MOV AX,WORD PTR SIDI(4)MOV AX,WORD PTR ES:BX(5)MOV BYTE PTR BX,1000 (6)MOV BX,OFFSET SI+200H(7)MOV OP2,BX(8)CMP HIGH W_OP3,25(9)CMP OP1,OP2 (10)CMP AX,OP2(11)MOV W_OP3BX+4*3DI,SP(12)ADD W_OP3,W_OP4(13)MOV AX,W_OP3DX(14)MOV

33、 OP1,LOW DS(15)MOV SP,OP2BXSI(16)MOV AX,W_OP3+W_OP4(17)MOV AX,W_OP3-W_OP4+100(18)SUB AL,W_OP3+7(19)MOV AX,BX SHL 2(20)MOV BX,W_OP3 AND 8FD7H答:1. (1)PUSH OP1 错,OP1为字节类型,栈操作不能按字节进行,应改为:PUSH WORD PTR OP1 (2)POP W_OP4 对的。 (3)MOV AX,WORD PTR SIDI 错,源操作数寻址方式有问题。 应改为: MOV BX,SI MOV AX,WORD PTR BXDI (4)MOV

34、AX,WORD PTR ES:BX错,若源操作数为寄存器寻址是不能加段阐明及属性修改。显然,原意应为寄存器间接寻址,故应改为:MOV AX,WORD PTR ES:BX(5)MOV BYTE PTR BX,1000 错,源操作数为字类型,目操作数为字节类型,两者不一致。应改为:MOV WORD PTR BX,1000 (6)MOV BX,OFFSET SI+200H 错,OFFSET运算应在汇编时完毕,但SI+200H在执行指令时才可获得。应改为:LEA BX,SI+200H (7)MOV OP2,BX 错,源操作数和目操作数均为内存单元,不容许。应改为:MOV AL,BX MOV OP2,A

35、L (8)CMP HIGH W_OP3,25错,目操作数中使用HIGH来分离存储器操作数,这是不容许。应改为:CMP BYTE PTR W_OP3+1,25 (9)CMP OP1,OP2错,源操作数和目操作数均为内存单元,不容许。应改为:MOV AL,OP2 CMP AL,OP1 (10)CMP AX,OP2错,源操作数为字节类型,目操作数为字类型,两者不一致。应改为: CMP AX,WORD PTR OP2 (11)MOV W_OP3BX+4*3DI,SP对的。(12)ADD W_OP3,W_OP4错,源操作数和目操作数均为内存单元,不容许。应改为:MOV AX,W_OP4 ADD W_OP

36、3,AX (13)MOV AX,W_OP3DX 错,不能用DX寄存器间接寻址。应改为:MOV BX,DX MOV AX,W_OP3BX (14)MOV OP1,LOW DS错,源操作数中使用LOW来分离寄存器操作数,这是不容许。应改为:MOV WORD PTR OP1,DS (15)MOV SP,OP2BXSI 错,源操作数为字节类型,目操作数为字类型,两者不一致。应改为:MOV SP,WORD PTR OP2BXSI (16)MOV AX,W_OP3+W_OP4错,两个标记符相加无意义。应改为:MOV AX,W_OP1 ADD AX,W_OP2(17)MOV AX,W_OP3-W_OP4+1

37、00对的,源操作数为两个标记符(地址)相减再加一数,汇编时得到一种数。(18)SUB AL,W_OP3+7错,两个操作数类型不一致。应改为:SUB AL,BYTE PTR W_OP3+7(19)MOV AX,BX SHL 2错,SHL只能对常量进行运算,左边不能使用寄存器(20)MOV BX,W_OP3 AND 8FD7H错,AND只能对常量进行运算,左边不能使用变量4.设已定义数据段 DATA SEGMENT VAR2 DW 10H,7889H VAR5 DB 20H,0 ADRR DW VAR2,VAR5 DATA ENDS为使ADRR字存储单元中存储内容为“0010H”,ADRR2字存储

38、单元中存储内容为“0020H”,上述省略号位置应分别填写一条什么语句?阐明理由。答:为使ADRR字存储单元中存储内容为“0010H”,ADRR2字存储单元中存储内容为“0020H”,上述省略号位置应分别填写ORG 10H 和 ORG 20H,或者分别填写语句VAR1 DB 10H DUP(?) 和 VAR3 6 DUP(?)5.下面数据段中,有数据为4100H字存储单元有几种?它们偏移量分别是多少? DATA SEGMENT DA1 DB 0 ORG 41H DA2 DB 0,A,41H,0,41H ADR DW DA1,DA2DATA ENDS答:给出数据段中,有数据4100H字存储单元有3

39、个,它们偏移量分别是41H、 44H、47H。7.试用数据定义语句DB或DW改写下述两语句中某一种,使它们在存储器中有完全相似存储状况。 VAR1 DB abcdefghijVAR2 DW 6162H,6364H,6566H,6768H,696AH答:将第一种伪指令语句改写为VAR1 DW ab,cd,ef,gh,ij,第二个伪指令语句不变。或第一种伪指令语句不变,而将第二个伪指令语句改写为:VAR2 DB 61H,62H,63H,64H,65H,66H,67H,68H,69H,6AH9.按下面规定写出程序框架(1)数据段位置从0E000H开始,数据段中定义一种100字节数组,其类型属性既是字

40、又是字节;(2)堆栈段从小段开始,段组名(类别名)为STACK;(3)代码段中指定段寄存器,指定主程序从1000H开始,给关于段寄存器赋值;(4)程序结束。答:所求程序框架为:Data SEGMENT AT 0E000H Arr_w LABEL WORD Arr_b DB 100 DUP(?)Data ENDSSta_seg SEGMENT PARA STACK DB 80 DUP(?) Top LABEL WORDSta_seg ENDSCode SEGMENT ASSUME CS:Code,DS:data,SS:sta_seg ORG 1000HStart:MOV AX,data MOV

41、DS,AXMOV AX,Sta_seg MOV SS,AX MOV SP,OFFSET Top MOV AH,4CH INT 21HCode ENDS END Start10.编写一种程序,规定运营时屏幕显示BELL,同步响铃一次(响铃ASCII码为07)。答:所求程序为:Code SEGMENT ASSUME CS:codeStart:MOV DL,42H MOV AH,2 INT 21HMOV DL,45H MOV AH,2 INT 21H MOV DL,4CH MOV AH,2 INT 21H MOV DL,4CH MOV AH,2 INT 21H MOV DL,7 MOV AH,2 I

42、NT 21H MOV AH,4CH INT 21HCode ENDS END Start11.假设在数据段X_SEG、附加段Y_SEG和堆栈段Z_SEG中分别定义了字变量X、Y和Z,试编制一完整程序计算 X+Y+Z,并将成果送X。答:所求程序为:X_SEG SEGMENT X DW 12eHX_SEG ENDSY_SEG SEGMENT Y DW 4d2HY_SEG ENDSZ_SEG SEGMENT STACK STACK Z DW 2CAHZ_SEG ENDSCode SEGMENT ASSUME CS:Code,DS:X_SEG,ES:Y_SEG,SS:Z_SEG Start:MOV AX,X_SEG MOV DS,AXMOV AX,Y_SEGMOV

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
百度文库年卡

猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 考试专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服