您的当前位置:首页正文

微机原理试题及答案

2021-01-03 来源:步旅网
4、与十进制数58.75等值的十六进制1、(1)0AH (2)51H (3)20H

数是 B 。 2、(1)0~255 (2)0.996094 (3)0~65535

A)A3.CH B)3A.CH ( 4)-32768~32767

3、16 C)3A.23H D)C.3AH

5、二进制数1101.01转换成十进制数4、(1)X1=1 (2)X1∨ X2 ∨ X3=1 是 C 。 5、(1)X>Y (2)X6、二进制数111010.11转换成十六进制数是 B 。

A)3ACH B)3A.CH C)3A3H D)3A.3H

7、十六进制数1CB.D8转换成二进制数是 D 。

A

110001011.11001 B)111101011.11101

C)111101011.11101

D)111001011.11011

8、将十六进制数FF.1转换成十进制数是 C 。

A)255.625

B)2501625 C)255.0625 D)250.0625

9、十进制正数43的八位二进制原码 B 。 A)00110101B)00101011 C)10110101 D)10101011

10、十进制正数38的八位二进制补码是 D 。 A)00011001 B)10100110 C)10011001 D)00100110

四、是非判断题

1、在第三代计算机期间出现了操作系统。 ( √ )

2、对于种类不同的计算机,其机器指令系统都是相同的。(× )

3、在计算机中,数据单位bit的意思是字节。 ( × )

4、八进制数的基数为8,因此在八进制数中可以使用的数字符号是0、1、2、3、4、5、6、7、8。( × )

5、在汉字国标码GB2312-80的字符集中,共收集了6763个常用汉字。(√ )

答案: 一、问答题

1、 R个,0 2、 110Q

3、 43H

4 、 5.375

5、 110000010010B

三、选择题

1、D 2、A 3、A 4、B 5、C 6、

B 7、D 8、C 9、B 10、D

四、是非判断题

1、√ 2、× 3、× 4、× 5、√ 1.把下列各数化成二进制数和八进制数(二进制取3位小数,八进制取一位小数): 7+3

/4,±3/64,73.5, 725.9375,25.34 答:7+3/4=111.110B; 7+3/4=7.6O; ±3/6

4=±0.000B; ±3/64=±0.0O; 73.5=1001

001.100B; 73.5=111.4O; 725.9375=1011010101.111B; 725.9375=1325.7O; 25.34=11001.011B; 25.34=31.3O

3.完成下列二进制数运算:101.111+11.011,1001.10-110.01,101.11*11.01, 101110111/1101

答:101.111+11.011=1001.01; 1001.10-110.01=11.01;

101.11*11.01=10010.1011; 101110111/1101=11100.11

4.完成下列各十六进制数的运算: A39E+28DC,D5AB-7CE5,2BF*4C,C16E/3A 答:A39E+28DC=CC7A; D5AB-7CE5=58C6; 2BF*4C=D0B4; C16E/3A=355.C2 6.试分别判断下列各组数据中哪个数据最大?哪个数据最小?

(1) A=0.1001B,B=0.1001D,C=0.1001H

(2) A=10111101B,B=1001D,C=111H

答:(1) A最大, C最小; (2) B最大, A最小;

1.写出下列各数的二进制原码和补码(最后两个用双字节): 0,96,-128,-38H,127,105,879H,-32768

答:上述各数的原码依次为:00000000(10000000), 01100000, 无, 10111000, 01111111, 01101001, 0000100001111001, 无;

上述各数的补码依次为:00000000, 01100000, 10000000, 11001000, 01111111, 01101001, 0000100001111001, 1000000000000000;

2.分别列出下述10进制数的16进制数、非压缩的BCD数、压缩的BCD数、ASCII

数字串(用16进制形式写出):10, 64, 78, 81, 92, 100, 125, 255

答:上述各数的16进制数依次为:AH,40H,4EH,51H,5CH,64H,7DH,FFH; 上述各数的非压缩的BCD数依次为:0100H,0604H,0708H,0801H,0902H,010000H, 010205H,020505H; 上述各数的压缩的BCD数依次为:10H,64H,78H,81H,92H,0100H,0125H,0255H;

上述各数的ASCII数字串依次为:3130H,3634H,3738H,3831H,3932H,313030H,313235H, 323535H;

3.用10进制数写出下列补码表示的机器数的真值:71H,1BH,80H,F8H,397DH,CF42H,9350H

答:上述补码表示的各机器数的真值用10

进制数分别表示为: +113,+27,-128,-8,+14717,-20670,-27828 4.若用一个字节来表示带符号数,判断下列各运算在机内进行时是否会产生溢出,写出判断过程。

A. 5BH+32H; B. -08H-15H; C. -51H+(-3DH); D. 2DH+3CH

答:A. 产生溢出, 5BH=01011011B其补码表示的机器数为:01011011 2H=00110010B其补码表示的机器数为:00110010 相加的结果为:10001101 值最高位向

符号位进位,但符号位向前无进位,故产生溢出。

B. 不产生溢出, -08H=-00001000B其补码表示的机器数为:11111000 -15H=-00010101B其补码表示的机器数为:11101011 相加的结果为:111100011 数值最高位向符号位进位,符号位同时也向前进位,故不产生溢出.

C.产生溢出,-51H=-01010001B其补码表示的机器数为:10101111 -3DH=-00111101B其补码表示的机器数为:11000011 相加的结果为:101110010

数值最高位向符号位无进位,但符号位向前进位,故产生溢出.

D.不产生溢出,2DH=00101101B其补码表示的机器数为:00101101 3CH=00111100B其补码表示的机器数为:00111100 相加的结果为:01101001 数值最高位向符号位无进位,符号位向前也无进位,故不产生溢出。 7.锁存器和寄存器有什么不同?

答:锁存器与寄存器都是用来暂存数据的器件,在本质上没有区别,不过寄存器的输出端平时不随输入端的变化而变化,只有在时钟有效时才将输入端的数据送输出端(打入寄存器),而锁存器的输出端平时总随输入端变化而变化,只有当锁存器信号到达时,

才将输出端的状态锁存起来,使其不再随输入端的变化而变化。

2.8086 CPU中地址加法器的重要性体现在哪里?

答:地址加法器是8086 CPU的总线接口单元中的一个器件,在8086存储器分段组织方式中它是实现存储器寻址的一个关键器件,地址加法器将两个16位寄存器中的逻辑地址移位相加,得到一个20位的实际地

址,把存储器寻址空间从64K扩大到1M,极大地扩大了微型计算机的程序存储空间,从而大大提高了程序运行效率。

3.8086 CPU中有哪些寄存器?分组说明用

途。哪些寄存器用来指示存储器单元的偏移地址?

答: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为堆栈指示器,用来存放栈顶有效地址。两个控制寄存器用来存放有关的状态信息

和控制信息。例如,标志寄存器FL用来存放状态标志和控制标志;而指令指针用来存放下一条要取指令的有效地址。四个段寄存器用来存放段地址。例如,CS寄存器用来存放代码段的段地址;DS寄存器用来存放数据段的段地址;SS寄存器用来存放堆栈段的段地址;ES寄存器用来存放扩展段的段地址。

7.设 AX=2875H、BX=34DFH、SS=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)基址变址寻址 (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;

3. 现有(DS)=2000H,(BX)=0100H,(SI)=0

002H,(20100H)=12H,(20101H)=34H,(20102H)=56H,(20103H)=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]是将从物理地址=(DS)*10H+1200H=21200H开始的两个单元内容送AX,执行完后AX寄存器的内容为4C2AH; (4)指令MOV AX,

[BX]是将从物理地址=(DS)*10H+(BX)=20100H开始的两个单元内容送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)=20102H开始的两个单元内容送AX,故执行完后AX寄存器的内容为7856H; (7)指令MOV AX,[BX+SI+1100]是将从物理地址=(DS)*10H+(BX)+(SI)+1100H=21202H开始的两个单元内容送AX,故执行完后AX寄存器的内容为65B7H; 5.分别指出下列指令中的源操作数和目的操作数的寻址方式。 (1)MOV SI,200 (2)MOV CX,DATA[SI] (3)ADD AX,[BX+DI]

(4)AND AX,BX (5)MOV [SI],AX (6)PUSHF

答:(1)目的操作数字段的寻址方式是寄存器寻址,源操作数字段的寻址方式是立即数寻址; (2)目的操作数的寻址方式是寄存器寻址,源操作数的寻址方式是寄存器相对寻址; (3)目的操作数的寻址方式

是寄存器寻址,源操作数的寻址方式是基址变址寻址; (4)目的操作数的寻址方式是寄存器寻址,源操作数的寻址方式也是寄存器寻址; (5)目的操作数的寻址方式是寄存器间接寻址,源操作数的寻址方式是寄存器寻址; (6)目的操作数的寻址方式是寄存器间接寻址,源操作数的寻址方式是寄存器寻址;

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,2000H (15)SHL AX,5

(8)POP CS (16)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 错,源操作数错,以A~F

开头的数字前应加0。应改为:MOV BL,0F5H

(7)MOV DX,2000H 正确。

(8) POP CS 错,不能将栈顶数据弹至CS中。 (9)MOV ES,3278H 错,立即数不能直接送ES寄存器。

应改为:MOV AX,3278H MOV 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 错,不能用AX寄存器间接寻址。应改为:MOV BX,AX MOV [BX],23DH

(15)SHL AX,5 错,不能用大于己于1的立即数指出移位位数。应改为:MOV CL,5 SHL AX,CL

(16)MUL AX,BX 错,目的操作数AX是隐

含的,不能在指令中写出。应改为:MUL BX 9.设堆栈指针SP的初值为2000H,AX=3000H,BX=5000H,试问:

(1)执行指令PUSH AX后 (SP)=?

(2)再执行PUSH BX及POP AX后 (SP)=?(AX)=?(BX)=?

答:(1)执行指令PUSH AX后 (SP)=2000H-2=1FFEH;

(2)再执行PUSH BX及POP AX后 (SP)=1FFEH, (AX)=5000H, (BX)=5000H 11.假如想从200中减去AL中的内容,用SUB 200,AL是否正确?如果不正确,应用什么方法?

答:想从200中减去AL中的内容,用SUB

200,AL不正确,应改为: MOV BL,200 SUB BL,AL

1.假设OP1,OP2是已经用DB定义的变量, W_OP3和W_OP4是已经用DW定义的变量,判断下列指令书写 一、填空题

1、执行部件EU的组织有: 4个通用寄

存器 , 4个专用寄存器 和 1个标志寄存器和算术逻辑部件 。

2、8086CPU从偶地址访问内存1个字时需占

用 1个总线 周期,而从奇地址访问

内存1个字操作需占用 2个总线

周期。

3、IBM-PC机中的内存是按段存放信息的,

一个段最大存贮空间为 64K 字节。

4、8086微处理机在最小模式下,用 M/IO 来控制输出地址是访问内存还是访问I/O。

5、一台计算机能执行多少种指令,是在 设计 时确定的。

二、单项选择题

1、微型计算机的性能主要由 B 来决定。

A、价钱 B、CPU C、

控制器 D、其它

2、对微处理器而言,它的每条指令都

有一定的时序,其时序关系是 C A、一个时钟周期包括几个机器周期,一个机器周期包括几个指令周期。 B、一个机器周期包括几个指令周期,一个指令周期包括几个时钟周期。

C、一个指令周期包括几个机器周

期,一个机器周期包括几个时钟周期。

D、一个指令周期包括几个时钟周期,一个时钟周期包括几个机器周期。

3、属于数据寄存器组的寄存器是 C

A、AX,BX,CX,DS B、SP,DX,BP,IP

C、AX,BX,CX,DX D、AL,DI,SI,AH

4、微型计算机的ALU部件是包含在 D 之中。

A、存贮器 B、I/O接口 C、I/O设备 D、CPU

5、在8086和8088汇编语言中,一个

字能表示的有符号数的范围是 B

A、-32768≤n≤32768

B、-32768≤n≤32767

C、-65535≤n

≤65535

D、-65536≤N≤65535 6、80386微型计算机是32位机,根据

是它的 D 。

A、地址线是32位 B、数据线为32位 C、寄存器是32位的 D、地址线和数据线都是32位 7、某数存于内存数据段中,已知该数据段的段地址为2000H,而数据所在单元的偏移地址为0120H,该数的在内存的物理地址为( B )

A.02120H B.20120H

C.21200H D.03200H

8、在存贮器读周期时,根据程序计数器PC提供的有效地址,使用从内存中取出( D ) A.操作数 B.操作数地址 C.转移地址 D.操作码

9、8086/8088系统中,对存贮器进行写

操作时,CPU输出控制信号有效的是( A ) A.W/IO=1, WR=0 B. WR=1

C.M/IO=0, RD=0

D.RD=0

MN/MX接地(MX为低电平),用于构成多

处理机和协处理机系统,支持系统工作的器

10、在8086/8088微机系统中,将AL件:(1)时钟发生器,8284A,(2)总线锁存器,内容送到I/O接口中,使用的指令是( D ) 74LS373,(3)总线收发器,74LS245,(4)总

A.IN AL,端口地址 线控制芯片,8288,控制信号由8288提供。 B.MOV AL,端口地址 C.OUT AL,端口

3、答:(1).执行一条指令所需要的时间

地址 称为指令周期;(2).一个CPU同外部设

D.OUT 端口地址,AL 三、简答题

1. 微处理器内部结构由哪些部件组

成?

2. 论述8086 CPU的最小方式和最大方式的区别。 3. 论述指令周期、机器周期和时钟周期间的关系。

4. 8086CPU从功能上分为几部分?各部分由什么组成?各部分的功能是什么?

5. 8086系统中的物理地址是如何得

到的?假如CS=2500H,IP=2l00H,其物理地址是多少?

6. 存储器分段组织有何优越性? 7. CPU响应中断时,为什么要执行两

个连续的中断响应周期? 8. 答案:

一、填空题

1、 4个通用寄存器、4个专用寄存器、1个标志寄存器和算术逻辑部件 2 1个总线、2个总线

3 64K 4 M/IO 5 设计

二、 单项选择题

1、B 2、C 3、C 4、D 5、B 6、D 7、B 8、D 9、A 10、D 三、简答题

1、 答案:微处理器由两部分组成,总线接口单元和执行单元

2、8086CPU的最小方式和最大方式的区别是:最小方式,MN/MX接+5V(MX为低电平),用于构成小型单处理机系统,支持系统工作的器件:(1)时钟发生器,8284A,(2)总线锁存器,74LS373,(3)总线收发器,74LS245,控制信号由CPU提供。最大方式,

备和内存储器之间进行信息交换过程所需

要的时间称为总线周期;(3).时钟脉冲的重复周期称为时钟周期;(4).一个指令周期由若干个总线周期组成,一个总线周期又由若干个时钟周期组成;(5). 8086CPU的总线周期至少由4个时钟周期组成;(6).总线周期完成一次数据传输包括:传送地址,传送数据;(7)等待周期----在等待周期期间,总线上的状态一直保持不变;(8)空闲周期----总线上无数据传输操作

5、8086从功能上可分为执行单元和总线接口单元。执行单元的功能是负责指令的执行,将指令译码并利用内部寄存器和ALU对数据进行处理。它由4个通用寄存器(AX、BX、CX、DX),4个专用寄存器(BP、SP、SI和DI),标志寄存器和算术逻辑部件组成。总线接口单元的功能是存储器、I/O端口传送数据。它由4 个段寄存器(CS、DS、ES、SS),指令指针寄存器IP,20位地址加法器和6个字节的指令队列组成。

10、CPU响应中断时,执行两个连续的

中断响应周期,每个响应周期都给出中断响应信号INTA。这是因为第一个总线周期通

知中断请示设备,微处理器准备响应中断,应该准备好中断类型码,第二个总线周期

中,微处理器接收中断类型码,以便得到中断向量,即中断服务程序的入口地址。 一、问答题:

1、 微型计算机是由五部分组成,包括

控制器,运算器,存储器、输入设备,输出设备;控制器控制计算机运转,计算器主要是算术运臬和逻辑运算,存储器主要是存储信息,输入设备主要是输入信息给计算机,输出设备主要是计算机输出信息。

7、寻址方式就是指:寻找操作数或者操作地址的各种方法,寻址方式主要有7种

(1).立即数寻址 (2).寄存器寻址 (3).直接寻址

(4).寄存器间接寻址 (5).寄存器相对寻址方式 (6).基址变址寻址方式 (7).相对基址变址寻址方式 一、问答题

1、下列字符表示成相应的ASCII码是多少?

(1)换行 (2)

字母“Q”

(3)空格

2、下列各机器数所表示数的范围是多少?

(1)8位二进制无符号定点整数; (2)8位二进制无符号定点小数; (3)16位二进制无符号定点整数; (4)用补码表示的16位二进制有符号整数;

3、(111)X=273,基数X=?

4、有一个二进制小数X=0.X1X2X3X4X5X6

(1) 若使X≥1/2,则X1„„X6应满足什么条件? (2) 若使X>1/8,则X1„„X6应满足什么条件?

5、 有两个二进制数X=01101010,Y=10001100,试比较它们的大小。 (1) X和Y两个数均为无符号数; (2) X和Y两个数均为有符号的补码数。

二、填空题

1、对于R进制数来说,其基数(能使用的数字符号个数)是 ,能使用的最小数字

是 。

2、十进制数72转换成八进制数是 。

3、与十进制数67等值的十六进制数是 。

4、二进制数101.011转换成十进制数

是 。

5、十六进制数0E12转换成二进制数是 。

三、选择题

1、在计算机内部,一切信息的存取、处理和传送都是以 形式进行的。

A)EBCDIC码 B)ASCII码 C)十六进制编码 D)二进制编码

2、与十进制数56等值的二进制数是 。

A)111000 B)111001 C)101111 D)110110

3、十进制数59转换成八进制数是 。

A)73Q B)37Q C)59Q D)112Q

4、与十进制数58.75等值的十六进制数是 。

A)A3.CH B)3A.CH C)3A.23H D)C.3AH

5、二进制数1101.01转换成十进制数是 。

A)17.256 B)13.5 C)13.25 D)17.5

6、二进制数111010.11转换成十六进制数是 。

A)3ACH B)3A.CH C)3A3H D)3A.3H

7、十六进制数1CB.D8转换成二进制数是 。

A)

110001011.11001 B)111101011.11101

C)111101011.11101

D)111001011.11011

8、将十六进制数FF.1转换成十进制数是 。

A)255.625 B)2501625 C)255.0625 D)250.0625

9、十进制正数43的八位二进制原码 。

A)00110101 B)00101011 C)10110101 D)10101011

10、十进制正数38的八位二进制补码

是 。

A)00011001 B)10100110 C)10011001 D)00100110

四、是非判断题

1、在第三代计算机期间出现了操作系统。 ( )

2、对于种类不同的计算机,其机器指令系统都是相同的。( )

3、在计算机中,数据单位bit的意思是字节。 ( )

4、八进制数的基数为8,因此在八进制数中可以使用的数字符号是0、1、2、3、4、5、6、7、8。( )

5、在汉字国标码GB2312-80的字符集中,共收集了6763个常用汉字。( )

答案: 一、问答题 1、(1)0AH (2)51H (3)20H 2、(1)0~255 (2)0.996094 (3)0~65535 (4)-32768~32767 3、16

4、(1)X1=1 (2)X1∨ X2 ∨ X3=1 5、(1)X>Y (2)X9、 5.375 10、 110000010010B 三、选择题

1、D 2、A 3、A 4、B 5、C 6、B 7、D 8、C 9、B 10、D 四、是非判断题

1、√ 2、× 3、× 4、× 5、√

一、 回答下列问题

1、 设VALA EQU 200 VALB EQU 30 VALC EQU 1BH 下列表达式的值各为多少?

(1)(VALA*VALC+VALB)/VALC (2)(VALB AND 0FH)OR (VALB XOR 0FH) (3)(VALA GE VALB )AND 0FH

2. 根据下列要求编写一个汇编语言程序::

(1)代码段的段名为COD_SG (2)数据段的段名为DAT_SG (3)堆栈段的段名为STK_SG (4)变量HIGH_DAT所包含的数据为95

(5)将变量HIGH_DAT装入寄存器AH,BH和DL

(6)程序运行的入口地址为START 3、定义一个数据段的字符变量和数据变量。

(1) TRING为字符串变量:‘Personal computer’

(2) VALD为十进制数字节变量12,99

(3) VALH为十六进制数字变量32H,0FAH

(4) VALZ为10个零的字节变量

(5) VALW为20个字单元 4、定义一个数据段,要求如下:

(1) 段界起始于字边界

(2) 该段与同名逻辑段相邻连接成一个物理段

(3) 类别号为‘DATA’

(4) 定义数据12,30,‘ABCD’

(5) 保留20个字的存储区 5、下列标号为什么是非法的? (1) GET.DATA (2) 1_NUM (3) TEST-DATA (4) RET (5) NEW ITEM

6、下面的数据项设置了多少个字节? (1) ASC_DATA DB ‘1234’

(2) HEX_DATA DB 1234H

7、 DATA SEGMENT TABLE_ADDR DW 1234H DATA ENDS .

. . MOV BX, TABLE_ADDR

LEA BX, TABLE_ADDR 请写出上述两条指令执行后, BX寄存器中的内容。

8、写出分配给下列中断类型号在中断向量表中的物理地址。

(1) INT 12H (2) INT 8

9、AR1和VAR2为字变量,LAB为标号,试指出下列指令的错误之处。

(1)ADD VAR1,VAR2 (2)SUB AL,VAR1

(3)JMP LAB[SI] (4)JNZ VAR1 二、填空题

1、假设(DS)=2000H,(BX)=1256H,(SI)=528FH;位移量TABLE=20A1H,(232F7H)=3280H,(264E5H)=2450H,

执行指令JMP BX后,(IP)= ;

执行指令JMP TABLE[BX]后,(IP)= ;

执行指令JMP [BX][SI]后,(IP)= 。

2、在1000H单元中有一条二字节指令JMP SHORT LAB,如果其中偏移量分别为30H、6CH、0B8H,则转向地址LAB的值分别为 ; ; ;

3、数据段中有以下定义: ARRAY1 EQU 16H ARRAY2 DW 16H

请指出下面两条指令的寻址方式: MOV AX,ARRAY1; 寻址方式 。

MOV AX,ARRAY2; 寻址方式 。

4、下面两个语句的区别在于 、 。

X1 EQU 1000H X2 =1000H

5、指令“AND AX,STR1 AND STR2”中,STR1和STR2是两个已赋值的变量,两个AND的区别

是 、 。 6、指令LOOPZ/LOOPE是结果 或 发生转移的指令。而指令LOOPNZ/LOOPNE则是结果 或 发生转移的指令。 7、调用指令CALL可分

为 、 、 和

等四种调用。

8、在汇编语言中,一个过程有NEAR和FAR两种属性。NEAR属性表明主程序和子程序 ,FAR属性表示主程序和子程序 。

9、串处理指令规定源寄存器使用 ,源串在 段中;目的寄存器使用 ,目的串必须在 段中。

10、 是过程定义结束伪指令,与 配套使用。 是段定义结束伪指令,与 配套使用。

三、选择题 1、执行下列程序,选择正确的结果:

MOV SP,2000H

MOV AX,0F0H MOV SI,1234H MOV DX,5678H PUSH SI POP DI SHL DX,1 TEST AX,DX PUSH DX HLT

(1)SP= ;

A)2000H B)1FFFH C)2001H D)1FFEH

(2)DH内容所在存储器的偏移地址为 ;

A)1FFFH B)1FFEH

C)1FFDH D)1FFCH

(3)DL内容所在存储器的偏移地址为 ;

A)1FFFH B)1FFEH

C)2000H D)1FFCH (4)(AX)= ; A)0H B)78H

C)0F0H D)56H

(5)(DI)= 。 A)1234H B)5678H C)2000H D)00F0H (6)(DX)= ;

A)5678H B)0ACF0H

C)2B3CH D)0ABF0H (7)标志位ZF= 。

A)0 B)1 C)不定 D)无值

2、下面是多字节加法程序,第一个数和是8A0BH,第二个数是D705H。

DATA SEGMENT FIRST DB (1), (2),0H SECOND DB (3), (4) DATA ENDS

CODE SEGMENT ASSUME CS:CODE,DS:DATA

START:MOV AX,DATA MOV DS,AX

MOV CX, (5) MOV SI,0

(6)

NEXT: MOV AL,SECOND[SI] ADC FIRST[SI],AL INC SI

LOOP NEXT MOV AL,0

ADC AL, (7) MOV FIRST[SI],AL

MOV AH,4CH

INT 21H CODE ENDS END START

请选择正确的答案填入空格中: (1)A)8AH B)0BH C)D7H D)05H (2)A)8AH B)0BH C)D7H D)05H (3)A)8AH B)0BH C)D7H D)05H (4)A)8AH B)0BH C)D7H D)05H (5)A)3 B)2 C)1 D)4 (6)A)CLC B)CLD C)STC D)CLI (7)A)1 B)-1

C)0 D)0FFH 四、完成下列练习

1、 设(DS)=0300H,(CS)=0200H,(IP)=0100H,(BX)=1000H,DISPLACE=2000H,(4000H)=5000H,(6000H)=8000H

确定无条件转换指令的段内转移地址

(1) JMP BX (2) JMP [BX]

(3) JMP DISPLACE[BX] 五、是非判断题

程序在数据段中的定义如下: DATA SEGMENT NAMES

DB ‘ABCD’

NAMET DW 20 DATA ENDS

请判断下列指令是否正确?正确的填‘A’,错误的填‘B’。

(1) MOV BX,OFFSET NAMES ( )

(2) MOV AL,[BX+2] ( )

( 3) MOV AX,NAMES ( )

(4) MOV AX,WORD PTR NAMES+1 ( )

(5) MOV AL,NAMET ( )

(6) MOV AL,BYTE PTR NAMET ( )

(7) MOV AX,DATA ( )

(8) MOV DS,AX ( )

(9) MOV AX,SEG NAMES ( )

(10) MOV BX,DATA ( )

六、请阅读下列程序,分析其功能或结果

1、 MOV AH,00 INT 16H

MOV AH,0AH MOV CX,00

MOV BH,00 INT 10H

2、 MOV AH,00 MOV AL,66 MOV DX,00 INT 17H

MOV AH,00 MOV AL,0DH INT 17H

3、 MOV AH,07 MOV AL,00 MOV BL,70H MOV CH,02 MOV CL,05 MOV DH,22 MOV DL,38

INT 10H

4、MESS DB ‘PRESS ANY

KEY’,0DH,0AH,‘$’

MOV AH,09

MOV DX,SEG MESS MOV DS,DX

MOV DX,OFFSET MESS

INT 21H 5、MOV AH,2

MOV DL,1

INT 21H

答案

一、回答下列问题 1、(1)C9H (2)1FH (3) 0FH 2、答案:

DAT_SG SEGEMNT HIGH_DAT DB 95 DAT_SG ENDS ;

STK_SG SEGMENT

DW 64 DUP(?) STK_SG ENDS ;

COD_SG SEGMENT MAIN

PROC FAR

ASSUME CS: COD_SG, DS: DAT_SG,

SS: STK_SG START: MOV AX, DAT-SG

MOV DS, AX

MOV AH, HIGH_DAT

MOV BH, AH MOV DL, AH MOV

AH, 4CH INT

21H

MAIN

ENDP

COD_SG ENDS END START 3、答案: DATA SEGMENT

TRING DB ‘Personal computer’ VALD DB 12,99

VALH DB 32H,0FAH VALZ DB 10 DUP(‘0’) VALW DW 20 DUP(?)

4、答案:

(1) 1,表示BUFA所占的内存空间 (2) 20,表示STA中DUP前重复的

次数。

5、非法标号: (1)因为‘.’只允许是标号的第一个字符

(2)第一个字符不能为数字 (3)不允许出现‘-’ (4)不能是保留字,如助记符 (5)不能有空格

6、答案:

(1) 设置了4个字节 (2) 设置了2个字节 7、答案:

MOV BX,TABLE_ADDR

; 执行后(BX)=1234H

LEA BX,TABLE_ADDR

; 执行后(BX)=OFFSET TABLE_ADDR 8、 答案:

(1) 00048h (2) 00020h

9、答案:

(1) 源和目的不能同为内存变量 (2) 两个类型不匹配

(3) LAB为标号不为符号常量 (4) JNZ可跳转到标号,不能跳转到

变量。

二、填空题

1、1256H 、3280H、2450H 2、1030H,106CH,10B8H

3、立即数寻址方式、直接寻址方式 4、=可以二次赋值,EQU不能直接下次赋值,如果要二次赋值,必须使用PURGE解除后才行。

5、前一个AND是一个命令,后一个AND是一个运算符。

6、相等、零,不相等,不为零

7、段内直接,段内间接,段间直接,段间间接

8、在同一个段内,不在同一个段内。 9、SI,DS,DI,ES

10、ENDP ,必须与过程名,ENDS,必须与段名

三、选择题

1、(1)、D (2)、A (3)、B (4)、C (5)、A (6)、B (7)、A 2、(1)、B (2)、A (3)、D (4)、C (5)、B (6)、A (7)、C 四、完成下列练习

1、1000H,5000H,8000H 2、答案:

(1) CMP CX,DX

JNB HIEQU :

HIEQU:

(2) CMP AX,BX

JG GREAT

GREAT:

(3) CMP CX,0

JZ ZERO

ZERO:

(4) CMP AX,BX

JLE SMAEQU :

SMAEQU:

(5) CMP CX,DX

JBE LOWEQU

LOWEQU:

(6) CMP AX,0

JS NEGAT : NEGAT:

(7) TEST AX,AX

JP IMAGE : IMAGE:

3、答案:

(1)MOV DS,SEG SOURCE MOV ES,SEGT DEST

MOV SI,OFFSET SOURCE MOV DI,OFFEST DEST MOV CX,N

AGAIN: MOV AL,[SI]

MOV ES:[DI],AL INC SI INC DI

LOOP AGAIN

(2)MOV DS,SEG SOURCE

MOV SI,OFFSET SOURCE

MOV CX,N AGAIN: MOV AL,[SI]

INC SI

LOOP AGAIN

(3) MOV ES,SEGT DEST

MOV DI,OFFEST DEST MOV CX,N AGAIN: MOV ES:[DI],AL INC DI

LOOP AGAIN

(4) MOV ES,SEGT DEST

MOV DI,OFFEST

DEST

MOV CX,N AGAIN: CMP AL,ES:[DI] INC DI

LOOP AGAIN

五、是非判断题

(1)A(2)B(3)B(4)A(5)B(6)A(7)A(8)A(9)A(10)A 六、请阅读下列程序,分析其功能或结果

1、读取键盘输入,并显示在显示器上。

2、 在打印机一输出字符‘B’,并回车。

3、屏幕初始化,左上角行号为2,左上角列号为5,右下角行号为22,右下角列号为38,使用整个空白窗口。 4、在屏幕上输出PRESS ANY KEY并换行回车。 5、在屏幕上输出1

例1 计算(V-(X*Y+Z - 540))/X 其中X、Y、Z、V均为16位带符号数,已分别装入X、Y、Z、V单元中,要求计算结果的商存入R单元,余数存入W单元。 DATA SEGMEN X DW 1234H Y DW 3456H Z DW 5678H V DW 7834H R DW ?

W DW ? DATA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA BEGIN:MOV AX,DATA

MOV DS,AX ;建立DS段地址

MOV AX,X ;被乘数存入AX IMUL Y ;X*Y

MOV CX,AX ;乘积的低位字存入CX

MOV BX,DX ;乘积的高位字存入BX

MOV AX,Z ;加数Z存入AX CWD ;把Z扩展成双字

ADD CX,AX ;乘积的低位字与Z的低位字相加

ADC BX,DX ;乘积与Z的高位字和低位的进位相加

SUB CX,540 ;(X*Y+Z)的低位字减去540

SBB BX,0 ;(X*Y+Z)的高位字减去低位的借位

MOV AX,V ;被减数V存入AX CWD ;把V扩展成双字 SUB AX,CX ;V的低位字与(X*Y+Z-540)的低位字相减

SBB DX,BX ;V的高位字与(X*Y+Z-540)的高位字相减

IDIV X ;(V-(X*Y+Z-540))/X

MOV R,AX;商存入R单元 MOV W,DX;余数存入W单元 MOV AH,4CH

INT 21H ;返回DOS

CODE ENDS ;代码段结束 END BEGIN ;汇编结束

1、要管理64个中断源,需多少片8259A级连?9 2、3片8259A级连,可管理多少个中断源?22 例1 用1K×4的2114芯片构成lK×8的存储器系统

1. 微处理器,微型计算机和微型计算机系统三者之间有何区别?

答:微处理器即CPU,它包括运算器、控制器、寄存器阵列和内部总线等部分,用于实现微型计算机的运算和控制功能,是微型计算机的核心;一台微型计算机由微处理器、内存储器、I/O接口电路以及总线构成;微型计算机系统则包括硬件系统和软件系统两大部分,其中硬件系统又包括微型计算机和外围设备;由此可见,微处理器是微型计算机的重要组成部分,而微型计算机系统又主要由微型计算机作为其硬件构成。

2. CPU在内部结构上由哪几部分构成?CPU应具备哪些主要功能?

答:CPU在内部结构上由运算器、控制器、寄存器阵列和内部总线等各部分构成,其主要功能是完成各种算数及逻辑运算,并实现对整个微型计算机控制,为此,其内部又必须具备传递和暂存数据的功能。 3. 累加器和其它通用寄存器相比有何不同?

答:累加器是通用寄存器之一,但累加器和其它通用寄存器相比又有其独特之处。累加器除了可用做通用寄存器存放数据外,对某些操作,一般操作前累加器用于存放一个操作数,操作后,累加器用于存放结果。

4. 微型计算机的总线有哪几类?总线结构的特点是什么? 答:微型计算机的总线包括地址总线、数据总线和控制总线三类,总线结构的特点是结构简单、可靠性高、易于设计生产和维护,更主要的是便于扩充。 6. 计算机I/O接口有何用途?试列出8个I/O接口。

答:计算机I/O接口是连接计算机和外部设备的纽带和桥梁,它主要用于协调和控制计算机与外设之间的信息流通和交换。例如:串行通讯口(COM口)、并行打印机口、软盘驱动器接口、硬盘驱动器接口、光驱接口、显示器接口、音响设备接口、其它通用设备接口(USB、SCSI等)。

11. 存储单元的选择由什么信号控制?读、写靠什么信号区分? 答:存储单元的选择由地址信号控制,而对存储单元进行读操作还是写操作则要靠读、写信号区分。 12. 以一个可执行文件的运行为例,简述程序执行过程。 答:当在DOS提示符下键入一个可执行文件名称(或在其它操作系统环境下执行有关操作)后,操作系统自动将该文件从外存装入内存并使指令指针指向其第一条指令,

从而启动文件执行过程。首先将第一条指令从内存取入CPU中译码执行,同时指令指针自动加1或按指令的要求作出相应改变,指向下一条要执行的指令,接着将下一条

指令从内存取入CPU译码执行,这样不断重复取指令和执行指令的过程,逐条执行指令,直至程序结束。

16

17

因篇幅问题不能全部显示,请点此查看更多更全内容