当前位置:文档之家› 微机原理习题答案1234章

微机原理习题答案1234章

微机原理习题答案1234章
微机原理习题答案1234章

微机原理与接口技术

楼顺天周佳社编著

科学出版社2006年

习题解答

因时间紧,习题解答由部分老师提供,还没有经过仔细校对,肯定有不少错误,请各位指正。另外,习题有多种解法,答案不唯一,仅供参考。

第1章数制与码制

1.将下列十进制数转换成二进制数:

(1)58;(2)67.625; (3)5721;

解:(1)58D = 0011 1010B

(2)67.625D = 0100 0011.1010B

(3)5721D = 0001 0110 0101 1001B

2.将二进制数变换成十六进制数:

(1)1001 0101B;(2)11 0100 1011B;(3)1111 1111 1111 1101B;(4)0100 0000 10101B;(5)0111 1111B;(6)0100 0000 0001B

解:(1)1001 0101B = 95H

(2)11 0100 1011B = 34BH

(3)1111 1111 1111 1101B = FFFDH

(4)0 1000 0001 0101B = 815H

(5)0111 1111B = 7FH

(6)0100 0000 0001B = 401H

3.将十六进制数变换成二进制数和十进制数:

(1)78H;(2)0A6H;(3)1000H;(4)0FFFFH

解:(1)78H = 120D = 0111 1000B

(2)0A6H = 166D = 1010 0110B

(3)1000H = 4096D = 0001 0000 0000 0000H

(4)0FFFFH = 65535D = 1111 1111 1111 1111B

4.将下列十进制数转换成十六进制数:

(1)39;(2)299.34375;(3)54.5625

解:(1)39D = 27H

(2)299.34375D = 12B.58H

(3)54.5625D = 36.9H

5.将下列二进制数转换成十进制数:

(1)10110.101B;(2)10010010.001B;(3)11010.1101B

解:(1)10110.101B = 22.625D

(2)10010010.001B = 146.125D

(3)11010.1101B = 26.8125D

6.计算(按原进制运算):

(1)10001101B+11010B;(2)10111B+11100101B;(3)1011110B-1110B;(4)124AH+78FH;(5)5673H+123H;(6)1000H-F5CH;

解:(1)10100111B

(2)11111100B

(3)1010000B

(4)19D9H

(5)5796H

(6)A4H

7.已知a=1011B, b=11001B, c=100110B, 按二进制完成下列运算,并用十进制运算检查

计算结果:

(1)a+b; (2)c-a-b; (3)a×b; (4)c÷b

解:a=1011B=11D b=11001B=25D c=100110B =38D

(1)100100B = 36D

(2)10B = 2D

(3)1 0001 0011B=275D

(4)1B 余1101B= 13D

8.已知a=00111000B, b=11000111B, 计算下列逻辑运算:

(1)a AND b; (2)a OR b; (3)a XOR b; (4)NOT a

解:(1)00000000B

(2)11111111B

(3)11111111B

(4)11000111B

9.设机器字长为8位,写出下列各数的原码和补码:

(1)+1010101B;(2)-1010101B;(3)+1111111B;

(4)-1111111B;(5)+1000000B;(6)-1000000B

解:(1)原01010101B 补01010101B

(2)原11010101B 补10101011B

(3)原01111111B 补01111111B

(4)原11111111B 补10000001B

(5)原01000000B 补01000000B

(6)原11000000B 补11000000B

10.写出下列十进制数的二进制补码表示(设机器字长为8位):

(1)15;(2)-1;(3)117;(4)0;

(4)-15;(5)127;(6)-128;(7)80

解:(1)(00001111B)补

(2)(11111111B)补

(3)(01110101B)补

(4)(00000000B)补

(5)(11110001B)补

(6)(01111111B)补

(7)(10000000B)补

(8)(01010000B)补

11.设机器字长为8位,先将下列各数表示成二进制补码,然后按补码进行运算,并用十进

制数运算进行检验:

(1)87-73;(2)87+(-73);(3)87-(-73);

(4)(-87)+73;(5)(-87)-73;(6)(-87)-(-73);

解:(1)1110B=14D

(2)00001110B 进位舍弃

(3)10100000B=-96D 溢出

(4)11110010B=-14D

(5)01100000B=96D 溢出

(6)11110010B=-14D

12.已知a,b,c,d为二进制补码:a=00110010B, b=01001010B, c=11101001B, d=10111010B,

计算:

(1)a+b;(2)a+c;(3)c+b;(4)c+d;

(5)a-b;(6)c-a;(7)d-c;(8)a+d-c

解:(1)01111100B

(2)00011011B

(3)00110011B

(4)10100011B

(5)11101000B

(6)10110111B

(7)11010001B

(8)11B

13.设下列四组为8位二进制补码表示的十六进制数,计算a+b和a-b,并判断其结果是否

溢出:

(1)a=37H, b=57H; (2)a=0B7H, b=0D7H;

(3)a=0F7H, b=0D7H; (4)a=37H, b=0C7H

解:(1)a+b=8EH溢出,a-b=E0H未溢出

(2)8EH未溢出,E0H未溢出

(3)CEH未溢出,20H未溢出

(4)FEH未溢出70H未溢出

14.求下列组合BCD数的二进制和十六进制表示形式:

(1)3251(2)12907(3)2006

解:(1)0011 0010 0101 0001B = 3251H

(2)0001 0010 1001 0111B = 12907H

(3)0010 0000 0000 0110B = 2006H

15.将下列算式中的十进制数表示成组合BCD码进行运算,并用加6/减6修正其结果:

(1)38+42;(2)56+77;(3)99+88;(4)34+69;

(5)38-42;(6)77-56;(7)15-76;(8)89-23

解:(1) 0011 1000B + 0100 0010B = 0111 1010B 低BCD码位需要加6修正0111 1010B + 0000 0110B = 1000 0000B = 80BCD

(2) 0101 0110B + 0111 0111B = 1100 1101B 高、低BCD码位都需要加6修正

1100 1101B + 0110 0110B = 0001 0011 0011B=133BCD

(3) 1001 1001B+1000 1000B = 0001 0010 0001B 高、低BCD码位都需要加6修正0001 0010 0001B +0110 0110B = 0001 1000 0111B=187BCD

(4) 0011 0100B + 0110 1001B = 1001 1101B 低BCD码位需要加6修正

1001 1101B + 0000 0110B = 1010 0011B 修正结果使高BCD码位需要加6修正

1010 0011B +0110 0000B = 0001 0000 0011B = 103BCD

(5) 00111000B-01000010B =(-1)1111 0110B 高 BCD码位需要减6修正

(-1)1111 0110B -0110 0000B =(-1)1001 0110B=-100+96=-4BCD

(6)01110111B-01010110B = 0010 0001B = 21BCD

(7) 00011001B-01110110B =(-1)1001 1111B 高、低BCD码位都需要减6修正

(-1)1001 1111B -01100110B =(-1)0011 1001B = -100+39 = -61BCD

(8)10001001B-00100011B = 0110 0110B = 66BCD

16.将下列字符串表示成相应的ASCII码(用十六进制数表示):

(1)Example 1;(2)XiDian University;(3)-108.652;

(4)How are you?;(5)Computer(6)Internet Web

解:(1)45H,78H,61H,6DH,70H,6CH,65H,20H,31H

(2)58H,69H,44H,69H,61H,6EH,20H,55H,6EH,69H,76H,65H,72H,73H,69H,74H,79H (3)2DH,31H,30H,38H,2EH,36H,35H,32H

(4)48H,6FH,77H,20H,61H72H,65H,20H79H,6FH,75H

(5)43H,6FH,6DH,70H,75H,74H,65H,72H

(6)49H,6EH,74H,65H72H,6EH,65H,74H,20H,57H,65H,62H

17.将下列字符串表示成相应的ASCII码(用十六进制数表示):

(1)Hello(2)123456;(注:表示回车)(3)ASCII;

(4)The number is 2315

解:(1)48H,65H,6CH,6CH,6FH (2)31H,32H,33H,0DH,34H,35H,36H (3)41H,53H,43H,49H,49H (4)54H,68H,65H,20H,6EH,75H,6DH,62H,65H,72H

第2章 8086 CPU 结构与功能

1. 微处理器内部结构由哪几部分组成?阐述各部分的主要功能。 解:微处理器内部结构由四部分组成:

(1)算术逻辑运算单元ALU :完成所有的运算操作; (2)工作寄存器:暂存寻址信息和计算过程中的中间结果;

(3)控制器:完成指令的读入、寄存和译码,并产生控制信号序列使ALU 完成指定操

作;

(4)I/O 控制逻辑:处理I/O 操作。

2. 微处理器级总线有哪几类?各类总线有什么作用? 解:微处理器级总线有三类: (1)数据总线:传送信息; (2)地址总线:传送地址码; (3)控制总线 传送控制信号。

3. 为什么地址总线是单向的,而数据总线是双向的?

解:地址码只能由CPU 生成。而数据需要在CPU 和存储器之间传输。 4. 8086/8088微处理器内部有哪些寄存器?其主要作用是什么?

解:8086CPU 内部有14个16位寄存器,其中8个通用寄存器(4数据寄存器AX 、BX 、

CX 、DX ,4地址指针/变址寄存器SI 、DI 、SP 、BP ),4个段寄存器(CS 、DS 、ES 、SS ),2个控制寄存器(指令指针IP ,微处理器状态字PSW )。

应该注意的是:可以在指令中用作为地址指针的寄存器有:SI 、DI 、BP 和BX ;在微处理器状态字PSW 中,一共设定了9个标志位,其中6个标志位用于反映ALU 前一次操作的结果状态(CF ,PF ,AF ,ZF ,SF ,OF ),另3个标志位用于控制CPU 操作(DF ,IF ,TF )。

5. 如果某微处理器有20条地址总线和16条数据总线:

(1)假定存储器地址空间与I/O 地址空间是分开的,则存储器地址空间有多大? (2)数据总线上传送的有符号整数的范围有多大? 解:(1)存储器地址空间为:20

2

1MB =

(2)有符号数范围为: 15

15

2~21--, 即 -32768~32767

6. 将十六进制数62A0H 与下列各数相加,求出其结果及标志位CF 、AF 、SF 、ZF 、OF

和PF的值:

(1)1234H;(2)4321H;(3)CFA0H;(4)9D60H

解:(1)74D4H CF=0 AF=0 SF=0 ZF=0 OF=0 PF=1

(2)A5C1H CF=0 AF=0 SF=1 ZF=0 OF=1 PF=0

(3)3240H CF=1 AF=0 SF=0 ZF=0 OF=0 PF=0

(4)0000H CF=1 AF=0 SF=0 ZF=1 OF=0 PF=1

7.从下列各数中减去4AE0H,求出其结果及标志位CF、AF、SF、ZF、OF和PF的值:

(1)1234H;(2)5D90H;(3)9090H;(4)EA04H

解:(1)C754H CF=1 AF=0 SF=1 ZF=0 OF=0 PF=0

(2)12B0H CF=0 AF=0 SF=0 ZF=0 OF=0 PF=0

(3)45B0H CF=0 AF=0 SF=0 ZF=0 OF=1 PF=0

(4)9F24H CF=0 AF=0 SF=1 ZF=0 OF=0 PF=1

9.写出下列存储器地址的段地址、偏移地址和物理地址:

(1)2134:10A0;(2)1FA0:0A1F;(3)267A:B876

解:物理地址=段地址*10H+偏移地址

(1)段地址:2134H,偏移地址:10A0H,物理地址:223E0H

(2)段地址:1FA0H,偏移地址:0A1FH,物理地址:2041FH

(3)段地址:267AH,偏移地址:B876H,物理地址:32016H

10.给定一个数据的有效地址为2359H,并且(DS)=490BH,求该数据的物理地址。解:物理地址=段地址*10H+偏移地址

物理地址=490BH +2359H =4B409H

11.如果在一个程序段开始执行之前,(CS)=0A7F0H,(IP)=2B40H,求该程序段的第

一个字的物理地址。

解:物理地址=段地址*10H+偏移地址

物理地址=CS*10H+IP = AAA40H

12.IBM PC有哪些寄存器可用来指示存储器的地址?

解:变址寄存器SI,DI,堆栈指针SP,BP,另外还有BX。

第3章8086CPU指令系统

1.写出完成下列要求的变量定义语句:

(1)在变量var1中保存6个字变量:4512H,4512,-1,100/3,10H,65530;

(2)在变量var2中保存字符串:’BYTE’, ’word’, ’WORD’;

(3)在缓冲区buf1中留出100个字节的存储空间;

(4)在缓冲区buf2中,保存5个字节的55H,再保存10个字节的240,并将这一过程重复7次;

(5)在变量var3中保存缓冲区buf1的长度;

(6)在变量pointer中保存变量var1和缓冲区buf1的偏移地址。

解:var1 DW 4512H,4512,-1,100/3,10H,65530

var2 DB ’BYTE’,’word’,’WORD’

buf1 DB 100 DUP(?)

buf2 DB 7 DUP(5 DUP(55H),10 DUP(240))

var3 DB LENGTH buf1

pointer DW var1,buf1 (或者pointer D W OFFSET var1,OFFSET buf1)2.设变量var1的逻辑地址为0100:0000,画出下列语句定义的变量的存储分配图:

var1 DB 12,-12,20/6,4 DUP(0,55H)

var2 DB ‘Assemble’

var3 DW ‘AB’, ‘cd’, ‘E’

var4 DW var2

var5 DD var2

解:

3.指令正误判断,对正确指令写出源和目的操作数的寻址方式,对错误指令指出原因(设

VAR1, VAR2为字变量, L1为标号):

(1)MOV SI,100 (2)MOV BX,VAR1[SI]

(3)MOV AX, [BX] (4)MOV AL, [DX]

(5)MOV BP, AL (6)MOV VAR1, VAR2

(7)MOV CS, AX (8)MOV DS, 0100H

(9)MOV [BX][SI], 1 (10)MOV AX, VAR1+VAR2

(11)ADD AX, LENGTH VAR1 (12)OR BL, TYPE VAR2

(13)SUB [DI], 78H (14)MOVS VAR1, VAR2

(15)PUSH 100H (16)POP CS

(17)XCHG AX, ES (18)MOV DS, CS

(19)JMP L1+5 (20)DIV AX, 10

(21)SHL BL, 2 (22)MOV AL, 15+23

(23)MUL CX (24)XCHG CL, [SI]

(25)ADC CS:[0100], AH (26)SBB VAR1-5,154

解:(1)MOV SI,100 正确。源:立即数寻址,目的:寄存器寻址(2)MOV BX,V AR1[SI] 正确。源:寄存器相对寻址,目的:寄存器寻址

(3)MOV AX,[BX] 正确。源:寄存器间接寻址,目的:寄存器寻址

(4)MOV AL,[DX] 错误。寄存器间接寻址时,DX, AX, CX不能作地址寄存器(5)MOV BP,AL 错误。操作数类型不一致

(6)MOV V AR1,V AR2 错误。两存储单元之间不能用MOV指令传送数据

(7)MOV CS,AX 错误。CS不能为目的操作数

(8)MOV DS,0100H 错误。目的操作数为段寄存器时,源操作数不能为立即数(9)MOV [BX][SI],1 错误。指令类型不定。

(10)MOV AX,V AR1+V AR2 错误。MOV指令中不能完成加法运算

(11)ADD AX,LENGTH V AR1 正确。源:立即数寻址。目的:寄存器寻址

(12)OR BL,TYPE V AR2 正确。源:立即数寻址。目的:寄存器寻址(13)SUB [DI],78H 错误。指令类型不定

(14)MOVS V AR1,V AR2 正确。目的、源均为隐含寻址。操作数仅指出操作数类型(15)PUSH 100H 错误。将常数压入堆栈,要通过寄存器来实现

(16)POP CS 错误。目的操作数不能为CS

(17)XCHG AX,ES 错误。XCHG指令的操作数不能是段寄存器

(18)MOV DS,CS 错误。MOV指令不能从段寄存器到段寄存器

(19)JMP L1+5 正确。段内直接转移

(20)DIV AX,10 错误。指令格式错误。

(21)SHL BL,2 错误。移位指令的移位数为1或者CL

(22)MOV AL,15+23 正确。源:立即数寻址,目的:寄存器。编译时就处理为38 (23)MUL CX 正确。源:寄存器寻址,目的:寄存器寻址

(24)XCHG CL,[SI] 正确。源:寄存器间接寻址,目的:寄存器寻址

(25)ADC CS:[0100],AH 正确。源:寄存器寻址,目的: 直接寻址(数据在代码段中)(26)SBB V AR1-5,154 正确。源:立即数寻址,目的:直接寻址。

4.说明下列指令对的区别:

(1)MOV AX,VAR1 与 MOV AX,OFFSET VAR1

(2)MOV AX,VAR2 与 LEA AX,VAR2

(3)MOV AL,LENGTH VAR1 与 MOV AL,SIZE VAR1

(4)MOV AL,ES: [DI] CMP AL, [SI] 与 CMPSB

(5)SHR AL,1 与 SAR AL,1

(6)SHR AL,1 与 ROR AL,1

(7)ROL BX,1 与 RCL BX,1

解:(1)MOV AX,V AR1 把变量V AR1对应地址单元中的一个字送入AX MOV AX,OFFSET V AR1 把V AR1的有效地址的偏移地址送入AX

(2)MOV AX,V AR2 把变量V AR2对应地址单元中的一个字送入AX LEA AX,V AR2 把V AR2的有效地址的偏移地址送入AX

(3)MOV AL,LENGTH V AR1 把变量V AR1的长度送入AL

MOV AL,SIZE V AR1 把变量V AR1的大小送入AL

(4)MOV AL,ES:[DI]

CMP AL,[SI] 把以ES为段地址,DI为偏移地址的一个字节送入AL,

并与以SI内容为偏移地址的一个字节作比较,改变标志寄

存器内容。(相当于作ES:(DI)与(DS: (SI)内容比较)CMPSB 对字符串中的一字节比较。寻址方式隐含。源串的地址由

DS:SI指定,目的串的地址由ES:DI指定。(相当于作

DS: (SI)与ES:(DI)内容比较)

(5)SHR AL,1 AL逻辑右移1位,最高位移入0, 最低位移入CF。

SAR AL,1 AL算术右移1位,以最高位内容移入,最低位移入CF, 其余各位

右移一位。

(6)SHR AL,1 AL逻辑右移1位,最高位移入0, 最低位移入CF。

ROR AL,1 AL的各位构成环形移位,右移一位,最低位内容同时移入到CF和

最高位。

(7)ROL BX,1 BX各位构成环形移位,左移一位,最高位内容同时移入到CF和

最低位。

RCL BX,1 BX和CF构成环形移位,左移一位,CF内容移入到最低位,最

高位移入CF。

5.写出下列转移指令的寻址方式(设L1为标号,VAR1为字型变量,DVAR1为双字型变量):

(1)JMP L1 (2)JMP NEAR L1

(3)JNZ L1 (4)JMP BX

(5)JG L1 (6)JMP VAR1[SI]

(7)JMP FAR PTR L1 (8)JMP DVAR1

解:(1)JMP L1 段内直接寻址(2)JMP NEAR PTR L1 段内直接寻址(3)JNZ L1 段内直接寻址(4)JMP BX 段内间接寻址

(5)JG L1 段内直接寻址(6)JMP V AR1[SI] 段内间接寻址

(7)JMP FAR PTR L1 段间直接寻址(8)JMP DV AR1 段间间接寻址

6.设(DS)=2000H,(BX)=0100H,(SI)=0002H,(20100)=3412H,(20102)=7856H,

(21200)=4C2AH,(21202)=65B7H,求下列指令执行后AX寄存器的内容:

(1)MOV AX,1200H;(2)MOV AX,BX;(3)MOV AX, [1200H];

(4)MOV AX, [BX]; (5)MOV AX,1100[BX];(6)MOV AX, [BX][SI];

(7)MOV AX,1100[BX][SI]

解:(1)1200H (2)0100H (3)4C2AH (4)3412H (5)4C2AH (6)7856H (7)65B7H

7.执行下列指令后,DX寄存器中的内容是多少?

TABLE DW 25,36,-1,-16,10000,13

PYL DW 7

……

MOV BX,OFFSET TABLE

ADD BX,PYL

MOV DX,[BX]

解:DX = 10FFH 由-16(FFF0H)的高8位和10000(2710H)的低8位构成

8.如果堆栈的起始地址为2200:0000,栈底为0100H,(SP)=00A8H,求

(1)栈顶地址;

(2)SS的内容;

(3)再存入数据5678H,3AF2H后,SP的内容。

解:栈顶地址00A8H,SS = 2200H,再存入2个字后,SP = 00A4H

9.设已用伪指令EQU定义了4个标识符:

N1 EQU 2100

N2 EQU 10

N3 EQU 20000

N4 EQU 25000

下列指令是否正确?并说明原因。

(1)ADD AL,N1-N2;(2)MOV AX,N3+N4;

(3)SUB BX,N4-N3;(4)SUB AH,N4-N3-N1;

(5)ADD AL,N2;(6)MOV AH,N2*N2

解:(1)错误。N1-N2=2090>255 (2)正确(3)正确

(4)错误。N4-N3-N1=2900>255 (5)正确(6)正确

10.按下列要求写出指令:

(1)将AX寄存器的低4位清零,其余位不变;

(2)将BX寄存器的低4位置1,其余位不变;

(3)将AL寄存器的低4位保持不变,高4位取反;

(4)测试BX中的位1和位2,当这两位同时为0时将AL置0FFH,否则AL清零;

(5)测试BX中的位1和位2,当这两位有一位为0时将AL置0FFH,否则AL清零;

(6)将AL中保存的字母ASCII码变换成相应的大写字母的ASCII码;

(7)将AL中保存的字母ASCII码变换成相应的小写字母的ASCII码;

(8)将AX中的各位取反;

(9)将DX中的低7位取反,高9位不变;

(10)将CX中的低8位与高8位互换。

解:(1)AND AX,0FFF0H

(2)OR BX,000FH

(3)XOR AL,0F0H

(4)TEST BX,06H (5)MOV AX,BX

JZ ZERO AND AX,06H

MOV AL,00H XOR AX,06H

JMP OVER JZ OVER ZERO:MOV AL,0FFH MOV AL,0FFH

OVER:OVER:

(6)AND AL,5FH

或者:

CMP AL,61H

JL OVER (无需变换或不是字母)

CMP AL,7AH

JG OVER (不是字母)

AND AL,5FH 或SUB AL,20H

OVER:

(7)OR AL,20H

或者:

CMP AL,41H

JL OVER (不是字母)

CMP AL,5AH

JG OVER (无需变换或不是字母)

OR AL,20H 或ADD AL,20H

OVER:

(8)XOR AX,0FFFFH 或者NOT AX

(9)XOR DX,007FH

(10)XCHG CH,CL

11.写出完成下述功能的程序段:

(1)传送40H到AL寄存器;

(2)将AL的内容乘以2;

(3)传送16H到AH寄存器;

(4)AL的内容加上AH的内容。

计算最后结果(AL)=?

解:(1)MOV AL,40H

(2)SHL AL,1

(3)MOV AH,16H

(4)ADD AL,AH

AL=96H

12.写出完成下述功能的程序段:

(1)从缓冲区BUF的0004偏移地址处传送一个字到AX寄存器;

(2)将AX寄存器的内容右移2位;

(3)将AX内容与BUF的0006偏移地址处的一个字相乘;

(4)相乘结果存入BUF的0020H偏移地址处(低位在前)。

解:(1)LEA SI, BUF

MOV AX, [SI+4]

(2) SHR AX,1

SHR AX,1

(3) MUL WORD PTR 6[SI]

(4) MOV 20H[SI],AX

MOV 22H[SI],DX

13.设(BX)=11001011B,变量VAR的内容为00110010B,求下列指令单独执行后BX的内

容:

(1)XOR BX,VAR;(2)AND BX,VAR;

(3)OR BX,VAR;(4)XOR BX,11110000B;

(5)AND BX,00001111B;(6)TEST BX,1

解:(1)00F9H

(2)0002H

(3)00FBH

(4)003BH

(5)000BH

(6)00CBH

14.设(DX)=10111011B,(CL)=3,(CF)=1,求下列指令单独执行后DX的内容:

(1)SHR DX,1;(2)SAR DX,CL;(3)SHL DX,CL;

(4)SHL DX,1;(5)ROR DX,CL;(6)ROL DL,CL;

(7)SAL DH,1;(8)RCL DX,CL;(9)RCR DL,1

解:DX= 0000 0000 1011 1011B CF=1 CL=3

(1)SHR DX,1 DX逻辑右移1 0000 0000 0101 1101B = 005DH (2)SAR D X,CL DX算术右移3 0000 0000 0001 0111B = 0017H

(3)SHL DX,CL DX逻辑左移3 0000 0101 1101 1000B = 05D8H

(4)SHL DX,1 DX逻辑左移1 0000 0001 0111 0110B = 0176H

(5)ROR DX,CL DX循环右移3 0110 0000 0001 0111B = 6017H

(6)ROL DL,CL DL循环左移3 0000 0000 1101 1101B = 00DDH (7)SAL DH,1 DH算术左移1 0000 0000 1011 1011B = 00BBH

(8)RCL D X,CL DX带进位循环左移3 0000 0101 1101 1100B = 05DCH

(9)RCR DL,1 DL带进位循环右移1 0000 0000 1101 1101B = 00DDH 15.选择题(各小题只有一个正确答案)

(1)执行下列三条指令后:

MOV SP,1000H

PUSH AX

CALL BX

a. (SP)=1000H;

b. (SP)=0FFEH;

c. (SP)=1004H;

d. (SP)=0FFCH;

(2)要检查寄存器AL中的内容是否与AH相同,应使用的指令为:

a. AND AL, AH

b. OR AL, AH

c. XOR AL, AH

d. SBB AL, AH

(3)指令JMP NEAR PTR L1与CALL L1(L1为标号)的区别在于:

a. 寻址方式不同;

b. 是否保存IP的内容;

c. 目的地址不同;

d. 对标志位的影响不同。

解:(1)D PUSHU AX则AX入栈,SP=0FFEH;CALL BX则IP入栈,SP=0FFCH (2)C 异或,若相同,则AL=0,ZF=1。

(3)B

16.寄存器DX:AX组成32位数,DX为高位,编写程序段实现:

(1)DX:AX右移3位,并将移出的低3位保存在CL中;

(2)DX:AX左移3位,并将移出的高3位保存在CL中;

解:(1)移出的3位应该按时序移入CL中。

XOR CL,CL

MOV BL,3

L1: SHR DX,1

RCR AX,1

RCL CL,1

DEC BL

JNZ L1

(2)移出的3位应该按时序移入CL中。

XOR CL,CL

MOV BL,3

L1: SHL AX,1

RCR DX,1

RCR CL,1

DEC BL

JNZ L1

17.编写程序段实现将BL中的每一位重复4次,构成32位的双字DX:AX,例如当BL

=01011101B时,则得到的(DX)=0F0FH,(AX)=0FF0FH。

解:算术右移时,移入的值就是最高位本身,这样可以使位内容重复,利用这一点可以实现题目的要求。

XOR DX,DX

XOR AX,AX

MOV CX,4

L1: SHR BL,1

RCR AX,1

SAR AX,1

SAR AX,1

SAR AX,1

LOOP L1

MOV CX,4

L2: SHR BL,1

RCR DX,1

SAR DX,1

SAR DX,1

SAR DX,1

LOOP L2

18.字变量VAR1中保存有小于38250的16位无符号数,编写程序段实现V AR1÷150,并

进行四舍五入操作,将商保存在字节变量VAR2中。

解:根据题意,38250÷150=255,因此商不会超过255,可以用一个字节表示。

a÷b的四舍五入操作可以通过判断除后余数实现:余数大于等于除数的一半,则商加1;

否则不用加1。但这种方法用汇编语言编程实现时比较复杂,这里介绍另外一种方法:设a ÷b 的四舍五入后的结果为c ,用『』表示取整数操作,则

20.5b a a c b b ?

?+????

=+=

????

????

这种方法是在除法操作之前,在被除数上加上除数的一半,这样除法操作后得到的值就是考虑了四舍五入的商。 V AR1

DW 12345

V AR2

DB ?

DATAA DB 150

MOV AX,V AR1 XOR BX,BX MOV BL,DATAA SHR BX,1 ADD AX,BX DIV DATAA

MOV V AR2,AL

19. 有一组无符号的16位数据保存在BUFFER 中,前两个字节存放数据的个数,编程实现

按下式进行滤波处理:

()1

()()(1)(2)23()()2

y k x k x k x k k y k x k k =

+-+-≥=<

解:滤波结果保存在FILT 中。

BUFFER DW 0CH

DW 33H, 18H, 1BH, 06H, 33H, 08H DW 3H, 6H, 0FH, 51H, 05H, 0CH

FILT DW 100H DUP (?)

LEA SI,BUFFER LEA DI,FILT

MOV CX,[SI]

MOV [DI],CX

ADD SI,2

ADD DI,2

XOR DX,DX

MOV AX,[SI]

MOV [DI],AX

MOV BX,2[SI]

MOV 2[DI],BX

ADD SI,4

ADD DI,4

DEC CX

DEC CX

ADD AX,BX

ADC DX,0

MOV BX,3

L1:

ADD AX,[SI]

ADC DX,0

PUSH DX

PUSH AX

DIV BX

MOV [DI],AX

POP AX

POP DX

SUB AX, [SI-4]

SUBB DX,0

ADD DI,2

ADD SI,2

LOOP L1

微机原理习题集以及答案

第一部分 例题与习题 第1章 微型计算机基础 例 题 1.把十进制数转化为二进制数。P7 解:把十进制数转换成二进制数时,需要对一个数的整数部分和小数部分分别进行处理,得出结果后再合并。 整数部分:一般采用除2取余法 小数部分:一般采用乘2取整法 余数 低位 整数 高位 2 | 137 2 | 68 × 2 2 | 34 2 | 17 × 2 2 | 8 2 | 4 × 2 2 | 2 1 高位 低 位 (137)10=()2 10=2 所以,10=(.111)2 2.把二进制数转换为八进制数和十六进制数。P9 解:八进制、十六进制都是从二进制演变而来,三位二进制数对应一位八进制数,四位二进制数对应一位十六进制数,从二进制向八进制、十六进制转换时,把二进制数以小数点为界,对小数点前后的数分别分组进行处理,不足的位数用0补足,整数部分在高位补0,小数部分在低位补0。 (10 1)2=(010 100)2=8 (1 2=(0001 2=16 3.将八进制数转换为二进制数。P9 解:8=(010 100)2=2 4.X=,Y=-,求[X -Y]补,并判断是否有溢出P11 解:[X -Y]补=[X]补+[-Y]补 [X]补= [Y]补= [-Y]补= + -------------- 1 -------------- 0 -------------- 0 -------------- 1 -------------- 0 -------------- 0 -------------- 0 -------------- 1 ------------- 1 ------------- 1 ------------- 1

微机原理习题解答第四章-

第四章 1.在下列程序运行后,给相应的寄存器及存储单元填入运行的结果: MOV AL,10H MOV CX,1000H MOV BX,2000H MOV [CX],AL XCHG CX,BX MOV DH,[BX] MOV DL,01H XCHG CX,BX MOV [BX],DL HLT 解:寄存器及存储单元的内容如下: AL=10H BL=00H BH=20H CL=00H CH=10H DL=01H

DH=10H (1000H=10H (2000H=01H 2.要求同题4.1,程序如下: MOV AL,50H MOV BP,1000H MOV BX,2000H MOV [BP],AL MOV DH,20H MOV [BX],DH MOV DL,01H MOV DL,[BX] MOV CX,3000H HLT 解:寄存器及存储单元的内容如下: BL=00H BH=20H CL=00H CH=30H

DL=20H DH=20H BP=1000H (1000H=50H (2000H=20H 3.自1000H单元开始有一个100个数的数据块,若要把它传送到自2000H开始的存储区中去,可以采用以下三种方法实现,试分别编写程序以实现数据块的传送。 (1不用数据块传送指令。 (2用单个传送的数据块传送指令。 (3用数据块成组传送指令。 解:(1LEA SI,1000H LEA DI,2000H MOV CX,100 L1: MOV AX,[SI] MOV [DI],AX LOOP L1 HLT (2LEA SI,1000H LEA DI,2000H

微机原理第7章习题与答案

习题 一、选择题 1.在程序控制传送方式中,_______可提高系统的工作效率。 A. 无条件传送 B. 查询传送 C. 中断传送 D.以上均可 答案:C 2.在8086的中断中,只有______需要硬件提供中断类型码。 A.外部中断 B.可屏蔽中断 C.不可屏蔽中断 D.内部中断 答案:B 3.在中断响应周期,CPU从数据总线上获取______。 A.中断向量的偏移地址 B.中断向量 C.中断向量的段地址 D.中断类型码 答案:D 4.执行INT n指令或响应中断时,CPU保护现场的次序是______。 A.FLAGS寄存器(FR)先入栈,其次是CS,最后是IP B.CS在先,其次是IP,最后FR入栈 C.FR在先,其后一次是IP,CS D.IP在先,其次是CS,最后FR 答案:A 5.在PC/XT中,NMI中断的中断向量在中断向量表中的位置_______。 A.是由程序指定的 B.是由DOS自动分配的 C.固定在0008H开始的4个字节中 D.固定在中断向量表的表首 答案:C 6.中断调用时,功能调用号码应该_______。 A.写在中断指令中 B.在执行中断指令前赋给AH C. 在执行中断指令前赋给AX D. 在执行中断指令前赋给DL 答案:B 7.若8259A的ICW2设置为28H,从IR3引入的中断请求的中断类型码是_____。 A. 28H B.2BH C.2CH D.2DH 答案:B 8.8259A有3中EOI方式,其目的都是为了_____。 A.发出中断结束命令,使相应的ISR=1 B. 发出中断结束命令,使相应的ISR=0 C. 发出中断结束命令,使相应的IMR=1 D. 发出中断结束命令,使相应的IMR=0答案:B 9.8259A特殊全嵌套方式要解决的主要问题是______。 A.屏蔽所有中断 B.设置最低优先级 C.开发低级中断 D.响应同级中断 答案:D

微机原理及应用试题库(附答案)

《微机原理及应用》试题库 1. 8086和8088的引脚信号中, D 为地址锁存允许信号引脚。 A.CLK B.INTR C.NMI D.ALE 2. 下面的哪项是有效标识符: B A . 4LOOP: B. DELAYIS: C. MAIN A/B: D. GAMA$1: 3. 如图所示的三态输出电路,当 A 时,V B≈V DD。 A. E(ENABLE)=1, A=1 B. E(ENABLE)=1, A=0 C. E(ENABLE)=0, A=1 D. E(ENABLE)=0, A=0 4. 设(SS)=2000H,(SP)=0100H,(AX)=2107H,则执行指令PUSH AX 后,存放数据21H的物理地址是 D 。 A. 20102H B. 20101H C. 200FEH D. 200FFH 5. 汇编语言中,为了便于对变量的访问, 它常常以变量名的形式出现在程序中, 可以认为它是存放数据存储单元的 A 。 A.符号地址B.物理地址C.偏移地址D.逻辑地址 6. 下列四个寄存器中,不能用来作为间接寻址方式的寄存器是 A 。 A. CX B. BX C. BP D. DI (C)7. 执行下列程序段: MOV AX,0 MOV BX,1 MOV CX,100 AA:ADD AX,BX INC BX LOOP AA HLT 执行后的结果:(AX)= ,(BX)= 。 A. 5050,99 B. 2500,100 C. 5050,101 D. 2550,102 8. 假设V1和V2是用DW定义的变量,下列指令中正确的是 A 。 A.MOV V1, 20H B.MOV V1, V2 C.MOV AL, V1 D.MOV 2000H, V2 9. – 49D的二进制补码为 A 。

微机原理习题及答案

一、选择 1、在微型计算机中,微处理器的主要功能是进行( )。 D A、算术运算 B、逻辑运算 C、算术、逻辑运算 D、算术、逻辑运算及全机的控制 2、Pentium I属于()位CPU C A、16 B、8 C、32 D、64 3、Intel 8086属于()位CPU A A、16 B、8 C、32 D、64 4、CPU与I/O设备间传送的信号通常有( ) D A、控制信息 B、状态信息 C、数据信息 D、以上三种都有 5、存储器用来存放计算机系统工作时所需要的信息,即( )。 D A、程序 B、数据 C、技术资料 D、程序和数据 6、运算器的核心部件是( )。 D A、加法器 B、累加寄存器 C、多路开关 D、算逻运算单元 二、填空 1、内存可分为2大类:随机存储器RAM 和 2、数据总线是向的,地址总线是向的。 3、计算机的五大部件是:、、、、输出设备 4、总线可分为三类:、、 5、存储程序工作原理最先由提出 6、在计算机内部,一切信息的存取、处理和传送都是以形式进行的。 1、只读存储器ROM 2、双、单 3、运算器、控制器、存储器、输入设备 4、地址总线、数据总线、控制总线 5、冯·诺依曼 6、二进制 三、简答 1、冯·诺依曼型计算机的特点是什么? (1).以二进制表示指令和数据 (2).程序和数据存放在存储器中,从存储器中取指令并执行 (3).由运算器、控制器、存储器、输入设备、输出设备构成计算机硬件系统。 一、选择 1、在机器数______中,零的表示形式是唯一的()。BD A、原码 B、补码 C、反码 D、移码 2、计算机内部表示带符号整数通常采用()。C A、原码 B、反码 C、补码 D、移码

微机原理习题解答

第一章微型计算机的基础知识 1-1 将下列十进制数转换为二进制数、十六进制数。 (1)110 (2)1 039 (3)0.75 (4)0.156 25 1-2 将下列十进制数转换为BCD 码。 (1)129 (2)5 678 (3)0.984 (4)93.745 1-3 将下列二进制数转换为十进制数、十六进制数。 (1)10101010 (2)10000000 (3)11000011.01 (4)01111110 1-4 将下列十六进制数转换为二进制数、十进制数。 (1)8E6H (2)0A42H (3)7E.C5H (4) 0F19.1DH 1-5 将下列二进制数转换为BCD 码。 (1)1011011.101 (2)1010110.001 1-6 将下列BCD 码转换为二进制数。 (1)(0010 0111 0011) BCD (2)(1001 0111.0010 0101) BCD 1-7 完成下列二进制数的运算。 (1)1001.11+11.11 (2)1101.01-0110.11 (3)1000.011-1001.101 (4)1111+1101 1-8 完成下列十六进制数的运算。 (1)6AH+0A6H (2)0AB1FH+0EFCH (3)12ADH-1DEH (4)117H-0ABH 1-9 已知X=01H,Y=0FFH ,在下面的情况下比较两数的大小。 (1)无符号数 (2)符号数 (均为补码) 1-10 计算下列各表达式。 (1)101+‘A’+01101001B+0D5H+57Q (2)127.8125+10111101.101+375.63Q+1FC.8AH 1-11 写出下列字符串的ASCII 码。 (1)HELLO (2)A8=

微机原理第7章习题与答案培训讲学

微机原理第7章习题 与答案

习题 一、选择题 1.在程序控制传送方式中,_______可提高系统的工作效率。 A. 无条件传送 B. 查询传送 C. 中断传送 D.以上均可 答案:C 2.在8086的中断中,只有______需要硬件提供中断类型码。 A.外部中断 B.可屏蔽中断 C.不可屏蔽中断 D.内部中断 答案:B 3.在中断响应周期,CPU从数据总线上获取______。 A.中断向量的偏移地址 B.中断向量 C.中断向量的段地址 D.中断类型码 答案:D 4.执行INT n指令或响应中断时,CPU保护现场的次序是______。 A.FLAGS寄存器(FR)先入栈,其次是CS,最后是IP __________________________________________________

B.CS在先,其次是IP,最后FR入栈 C.FR在先,其后一次是IP,CS D.IP在先,其次是CS,最后FR 答案:A 5.在PC/XT中,NMI中断的中断向量在中断向量表中的位置_______。 A.是由程序指定的 B.是由DOS自动分配的 C.固定在0008H开始的4个字节中 D.固定在中断向量表的表首 答案:C 6.中断调用时,功能调用号码应该_______。 A.写在中断指令中 B.在执行中断指令前赋给AH C. 在执行中断指令前赋给AX D. 在执行中断指令前赋给DL 答案:B 7.若8259A的ICW2设置为28H,从IR3引入的中断请求的中断类型码是_____。 __________________________________________________

微机原理试题及答案

学年第学期微机原理及应用(A)课程试卷 卷16 班级姓名得分任课教师 一、选择题:(每题分,共18分) 1、DMAC向CPU发出请求信号,CPU响应并交出总线控制权后将()。 反复执行空操作,直到DMA操作结束 进入暂停状态, 直到DMA操作结束 进入保持状态, 直到DMA操作结束 进入等待状态, 直到DMA操作结束 2、有一个实时数据采集系统,要求10ms进行一次数据采集,然后进行数 据处理及显示输出,应采用的数据传送方式为()。 无条件传送方式查询方式 中断方式直接存储器存取方式 3、在数据传送过程中,数据由串行变并行,或由并行变串行的转换可通过 ()来实现。 计数器寄存器移位寄存器D触发器 4、8088 CPU输入/输出指令可寻址外设端口的数量最大可达()个。 128 256 16K 64K 5、CPU响应中断后,通过()完成断点的保护。

执行开中断指令执行关中断指令 执行PUSH指令内部自动操作 6、并行接口芯片8255A具有双向数据传送功能的端口是()。 PA口PB口PC口控制口 7、8088CPU处理动作的最小时间单位是()。 指令周期时钟周期机器周期总线周期 8.堆栈是内存中()。 先进先出的ROM区域后进先出的ROM区域 先进先出的RAM区域后进先出的RAM区域 9、计算机中广泛应用的RS-232C实质上是一种()。 串行接口芯片串行通信规程(协议) 串行通信接口标准系统总线标准 5--1 10、高速缓冲存储器(CACHE)一般是由()芯片组成。 SRAM DRAM ROM EPROM 11、鼠标器是一种()。 手持式的作图部件手持式的光学字符识别设备 手持式的座标定位部件手持式扫描器 12、传送速度单位“bps”的含义是()。

《微机原理》复习题及解答

微机原理》复习题解答 1、在8086/8088系统中,存储器是怎样组织的?整个存储空间有多大?最大逻辑长度为多大?至少可将存储器分为多少个段?段起始于什么位置?偏移地址是什么?怎样计算20位物理地址? ①分段组织②1兆字节③64K字节④至少分成16段⑤起始于最后四位二进制数都为0的位置⑥偏移地址是相当于段起始位置的偏移量⑦段地址×16+偏移地址 2、系统总线分为哪几组?各自传送的方向如何? ①分成3组:数据部线、地址总线、控制总线②数据总线和控制总线都是双向的,地址总线始终由CPU发出 3、8086微处理器分为哪几个部分?它们之间采用什么工作方式?其中状态寄存器由几类标志组成?与中断有关的是哪一位? ①分成2部分:总线接口部件、执行部件②并行工作方式③2类:状态标志、控制标志④IF 位,IF置1,响应外部可屏蔽中断 4、怎样将8086设置为最小或最大模式?分别应配置哪些外围器件?作用怎样?最大模式与最小模式的配置相比多了什么器件?作用是什么? ①引脚接高电平则设置为最小模式,如接低电平则设置为最大模式②最小模式下:1片8248A,作为时钟发生器;3片8282或74LS373,用来作为地址锁存器;2片8286/8287作为总线收发器。最大模式下:1片8284A,3片8282,2片8286,1片8288总线控制器,1片8259A及有关电路③8284A除了提供频率恒定的时钟信号外,还对准备发(READY)和(RESET)信号进行同步。8282:地址/数据总线是复用的,而和S7也是复用的,所以在总路线周期前一部分时间中输出地址信号和信号的引脚,在总线周期的后一部分时间中改变了含义。因为有了锁存器对地址和进行锁存,所以在总线周期的后半部分,地址和数据同时出现在系统的地址总线和数据总线上;同样,此时也在锁存器输出端呈现有效电平,于是确保了CPU对存储器和I/O端口的正常读/写操作。8286/8287:当系统中所连的存储器和外设较多时,需要增加数据总线的驱动能力。④多了1片8288。作用:对CPU 发出的S0,S1,S2控制信号进行变换和组合,以得到对存储器和I/O端口的读/写信号和对锁存器8282及对总线收发器8286的控制信号。 5、8086/8088系统中为什么将数据与地址总线复用? 因为数据线与地址线传送时间不一样,在总线周期T1传送地址,其他时刻传送数据,传送数据和地址时间是分离的,所以8086/8088系统中能将数据线与地址线复用。 6、CPU从奇地址或偶地址读写一个字(或字节)时,和A0是什么电平?分别用几个总线周期? A0 操作总线周期 0 0 从偶地址开始读/写一个字1个 1 0 从偶地址单元或端口读/写一个字节1 个 0 1 从奇地址单元或端口读/写一个字节1个 1 1 0 从奇地址开始读/写一个字2个(在第一总线周期,将低8位数据送到AD15—AD8,在第二个总线周期,将高8位数据送到AD7—AD0) 7、CPU的READY和RESET信号有什么作用?

微机原理课后题答案(5-7章)分析

第5章存储器系统 一、选择题 1.下列(B)不是半导体存储器芯片的性能指标。 A. 存储容量 B. 存储结构 C. 集成度 D. 最大存储时间 2.高速缓存由(B)构成。 A. SRAM B. DRAM C. EPROM D. 硬磁盘 3.由2K×1bit的芯片组成容量为4K×8bit的存储器需要(D)个存储芯片。 A. 2 B. 8 C. 32 D. 16 4.安排2764芯片内第一个单元的地址是1000H,则该芯片的最末单元的地址是(D)。 A. 1FFFH B. 17FFH C. 27FFH D. 2FFFH 5.一片容量为8KB的存储芯片,若用其组成1MB内存,需( C )片。 A. 120 B. 124 C. 128 D. 132 6.外存储器包括(A B E F )。 A. 软磁盘 B. 磁带 C. SRAM D. BIOS E. 硬磁盘 F. 光盘 7.在多级存储体系结构中,Cache-主存结构主要用于解决(D )的问题。 A. 主存容量不足 B. 主存与辅存速度不匹配 C. 辅存与CPU速度不匹配 D. 主存与CPU速度不匹配 8.动态RAM的特点之一是(BD )。 A. 能永久保存存入的信息 B. 需要刷新电路 C. 不需要刷新电路 D. 存取速度高于静态RAM 二、填空题 1.在分层次的存储系统中,存取速度最快、靠CPU最近且打交道最多的是Cache 存储器,它是由DRAM 类型的芯片构成,而主存储器则是由SRAM 类型的芯片构成。 2.将存储器与系统相连的译码片选方式有线选法、部分地址译码法和全地址译码法。 3.若存储空间的首地址为1000H,存储容量为1K×8、2K×8、4K×8H 和8K×8的存储器所对应的末地址分别为13FFH 、17FFH 、1FFFH 和2FFFH 。 4.微机系统中存储器通常被视为Cache 、主存、辅存三级结构。 三、综合题 1.某微机系统中内存的首地址为3000H,末地址为63FFH,求其内存容量。答:存储区总的单元数为:63FFH-3000H+1=3400H,故总容量13KB。 计算方法:若直接用十六进制表示,则总容量=(3*163+4*162)/1024; 若将地址表示成二进制,则总容量=213B+212B+210B;

微机原理及接口技术考试各章重点题库及答案

微机原理与接口技术试题库 第一章基础知识 一、填空 1、计算机中采用二进制数,尾符用B 表示。 2、西文字符的编码是ASCII 码,用 1 个字节表示。 3、10111B用十六进制数表示为H,八进制数表示为O。 4、带符号的二进制数称为真值;如果把其符号位也数字化,称为原码。 5、已知一组二进制数为-1011B,其反码为10100B ,其补码为10101B 。 6、二进制码最小单位是位,基本单位是字节。 7、一个字节由8 位二进制数构成,一个字节简记为1B ,一个字节可以表示256 个信息。 8、用二进制数表示的十进制编码,简称为BCD 码。 9、8421码是一种有权BCD 码,余3码是一种无权BCD 码。 二、选择 1、计算机中采用 A 进制数。 A. 2 B. 8 C. 16 D. 10 2、以下的 C 编码是一种有权码。 A. 循环码 B. BCD码 C. 8421码 D. 余3码 3、八进制数的尾符是 B 。 A. B B. O C. D D. H 4、与十进制数254等值的数是 A 。 A. 11111110 B. 11101111 C. 11111011 D. 11101110 5、下列不同数制表示的数中,数值最大的是 C 。 A. 11011101B B. 334O C. 1219D D. DAH 6、与十六进制数BC等值的数是B 。 A. 10111011 B. 10111100 C. 11001100 D. 11001011 7、下列字符中,ASCII码值最小的是 A 。 A. K B. Y C. a D. i 8、最大的10位无符号二进制整数转换成十进制数是C 。 A. 51 B. 512 C. 1023 D. 1024 9、A的ASCII码值为65D,ASCII码值为68D的字母是C 。 A. B B. C C. D D. E 10、下列等式中,正确的是 D 。 A. 1KB=1024×1024B B. 1MB=1024B

(完整版)微机原理及接口技术(习题答案)

范文范例学习指导 第1章微机运算基础 习题和思考题 1.请完成以下计算: 174.66D=(10101110.10101)B=(AE. A8)H 10101110101.01011B=(1397.344)D=(575.58)H 4BCH=(010*********)B=()BCD 2.设字长为8位,X=(2A)16,当X分别为原码、补码、反码和无符号数的时候,其真值 是多少? 答:当X表示原码时,其真值为:+101010 当X表示补码时,其真值为:+101010 当X表示反码时,其真值为:+101010 当X表示无符号数数时,其真值为:00101010 3.设字长为8位,用补码形式完成下列计算,要求有运算结果并讨论是否发生溢出? 120+18 -33-37 -90-70 50+84 答:120+18 其补码形式分别为:(120)补=01111000 (18)补=00010010 01111000 + 00010010 10001010 由于C s=0 ,C p=1,因此有溢出,结果错误 -33-37 其补码形式为:(-33)补=11011111 (-37)补=11011011 11011111 +11011011 10111010 由于C s=1, C p=1,所以没有溢出,结果正确 -90-70 其补码形式为:(-90)补=10011100 (-70)补=10111010 10011100 +10111010 01010110 由于C s=1, C p=0,所以有溢出,结果错误 50+84

其补码形式为:(50)补=00110010 (84)补=01010100 00110010 +01010100 10000110 由于C s=0, C p=1,所以有溢出,结果错误 4.请写出下列字符串的ASCII码值。 My name is Zhang san. 4D 79 6E 61 6D 65 69 73 5A 68 61 6E 67 73 61 6E 2E 第2章 80X86微机系统 习题与思考题 1.微型计算机主要由哪些基本部件组成?各部件的主要功能是什么? 答:微型计算机主要由输入设备、运算器、控制器、存储器和输出设备组成。 各部件的功能分别是:1、输入设备通过输入接口电路将程序和数据输入内存;2、运算器是进行算术运算和逻辑运算的部件,它是指令的执行部件;3、控制器是计算机的指挥中心,它负责对指令进行译码,产生出整个指令系统所需要的全部操作的控制信号,控制运算器、存储器、输入/输出接口等部件完成指令规定的操作;4、存储器用来存放程序、原始操作数、运算的中间结果数据和最终结果数据; 5、输出设备是CPU通过相应的输出接口电路将程序运行的结果及程序、数据送到的设备; 2.微处理器的发展过程是什么? 答:微型计算机的发展过程是: 第一代(1946~1957)——采用电子管为逻辑部件,以超声波汞延迟线、阴极射线管、磁芯和磁鼓等为存储手段;软件上采用机器语言,后期采用汇编语言。 第二代(1957~1965)——采用晶体管为逻辑部件,用磁芯、磁盘作内存和外存;软件上广泛采用高级语言,并出现了早期的操作系统。 第三代(1965~1971)——采用中小规模集成电路为主要部件,以磁芯、磁盘作内存和外存;软件上广泛使用操作系统,产生了分时、实时等操作系统和计算机网络。 第四代(1971~至今)——采用大规模集成电路(LSI)、超大规模集成电路(VLSI)为主要部件,以半导体存储器和磁盘为内、外存储器;在软件方法上产生了结构化程序设计和面向对象程序设计的思想。 3.简述80486微处理器的基本结构。 书12页 4.80486微处理器的工作模式有几种?当CS内容为1000H,IP内容为7896H,求在实地址 模式下的物理地址为多少? 答:实模式和保护模式及虚拟8086模式。当CS内容为1000H,IP内容为7896H,在实地

微机原理模拟试题4答案

模拟试题4参考答案 一、填空题(20) 1、1100100 144 64H 2、181 B5 3、11011010 10100101 10100110 4、-46 5、10100101 6、ALU 16 BIU 地址产生器20 7、2 512K 奇地址BHE 8、16 64K 9、程序控制方式中断控制方式DMA方式 10、段地址、偏移量 11、高速缓冲存储器;存取速度快、容量小、由SRAM组成 12、CF 、OF 13、(1)7 (2)4 (3)10 (4)1 (5)3 (6)9 (7)2 (8)5 (9)6 (10)8 14、总线宽度、工作速度、最大数据传输率 二、简答题 1.8086CPU分为哪两个工作部件?每个部件主要由什么组成? 答:8086CPU分为执行部件EU和总线接口部件BIU。 EU主要包括:ALU、标志寄存器、数据暂存器、通用寄存器组、控制单元。 BIU主要包括:指令队列缓冲器、地址加法器和段寄存器、指令指针寄存器IP、总线控制电路与内部通信寄存器。 2.什么是段基址?什么是段基值?它们之间的关系是什么? 答:段基址是指一个逻辑段在内存中的起始单元的20位物理地址; 段基值是指段的起始地址放入相应的段地址寄存器中的内容。 两者关系为:段基值=段基址/16 3.虚拟存储器的含义是什么?虚拟存储器的3种方式分别是什么? 答:虚拟存储器(Virtual Memory)是以存储器访问的局部性为基础,建立在主存—辅存物理体系结构上的存储管理技术。在存储系统中,由于主存容量不能满足用户的需要,因而引入辅存作为后援。即辅存作主存用,扩大编程者的使用空间。 3种方式分别为:页式虚拟存储器、段式虚拟存储器、段页式虚拟存储器。 三、寻址方式的有效地址计算(10) 正确答案的序号为:C A B E D 四、在每小题的括号中分别填入执行结果(15)

微机原理习题答案8章

第8章中断系统与可编程中断控制器8259A 1.什么叫中断?8086微机系统中有哪几种不同类型的中断? 答:在CPU执行程序的过程中,由于某个事件的发生,CPU暂停当前正在执行的程序,转去执行处理该事件的一个中断服务程序,待中断服务程序执行完成后,CPU再返回到原被中断的程序继续执行。这个过程称为中断。 8086微机系统中有3种中断: 1)外部可屏蔽中断。 2)外部不可屏蔽中断。 3)内部中断 2.什么就是中断类型?它有什么用处? 答:通常用若干位二进制编码来给中断源编号,该编号称为中断类型号。8086微处理器用8位二进制码表示一个中断类型,有256个不同的中断。这些中断可以划分为内部中断、外部不可屏蔽中断、外部可屏蔽中断三类。 用处:使CPU识别中断源,从而能正确地转向该中断源对应的中断服务程序入口。 3.什么就是中断嵌套?使用中断嵌套有什么好处?对于可屏蔽中断,实现中断嵌套的条件 就是 什么? 答:微处理器在处理低级别中断的过程中,如果出现了级别高的中断请求,微处理器停止执行低级中断的处理程序而去优先处理高级中断,等高级中断处理完毕后,再接着执行低级的未处理完的程序,这种中断处理方式成为中断嵌套。 使用中断嵌套的好处就是能够提高中断响应的实时性。对于某些对实时性要求较高的操作,必须赋予较高的优先级与采取中断嵌套的方式,才能保证系统能够及时响应该中断请求。 对于可屏蔽中断,实现中断嵌套的条件有:(1)微处理器处于中断允许状态(IF=1)(2)中断请求的优先级高于正在执行的中断处理程序的优先级。(3)中断请求未被8259屏蔽。(4)没有不可屏蔽中断请求与总线请求。 4.什么就是中断向量?中断类型号为1FH的中断向量为2345H:1234H,画图说明它在中 断向 量表中的存放位置。

《微机原理》习题参考答案4章

第4章 AT89C51单片机汇编语言程序设计 1.已知程序执行前有A = 02H,SP = 42H,(41H) = FFH,(42H) = FFH。下述程序执行后,A = ;SP = ;(41H) = ;(42H) = ;PC = 。 POP DPH POP DPL MOV DPTR,#3000H RL A MOV B,A MOVC A,@A+DPTR PUSH Acc MOV A,B INC A MOVC A,@A+DPTR PUSH Acc RET ORG 3000H DB 10H,80H,30H,80H,50H,80H 答:A=80H,SP=40H,(51H)=50H,(52H)=80H ,PC=8050H。 2.说明伪指令的作用。“伪”的含义是什么?常用伪指令的功能如何? 答:伪指令不属于指令系统中的汇编语言指令,它是程序员发给汇编程序的 控制命令。只有在汇编前的源程序中才有伪指令。所以“伪”体现在汇编后, 伪指令没有相应的机器代码产生。 3.解释手工汇编、机器汇编、交叉汇编、反汇编术语概念。 答:(1)手工汇编:手工编程,首先把程序用助记符指令写出,然后通过查 指令的机器代码表,逐个把助记符指令“翻译”成机器代码,这种人工查表 “翻译”指令的方法称为手工汇编。 (2)机器汇编:是借助于微型计算机上的软件(汇编程序)来代替手工汇编, 完成把助记符指令“翻译”成机器代码的工作。 (3)交叉汇编:使用微型计算机来完成汇编,而汇编后得到的机器代码却是 在另一台计算机(这里是单片机)上运行,称这种机器汇编为交叉汇编。 (4)反汇编:将二进制的机器代码语言程序翻译成汇编语言源程序的过程。4.下列程序段经汇编后,从1000H开始的各有关存储单元的内容是什么?ORG 1000H TAB1 EQU 1234H TAB2 EQU 3000H DB "MAIN" DW TAB1,TAB2,70H 答:4D 41 49 4E 12 34 30 00 00 70

微机原理习题集(7章)资料

一.单项选择题: 1、中断操作中的中断类型号是_D___; A 中断服务子程序的入口地址 B中断向量表的地址指针 C 中断向量表的内容 D 中断服务程序的编号 2、当8253的输入端A 1A =10、0 CS时,此时选择片内的寄存器地址为_C___; A CNT 0 B CNT 1 C CNT 2 D 工作方式寄存器 3、在下列程序控制传送方式中,__C__方式可提高系统的工作效率; A 无条件传送 B 查询传送 C 中断传送 D 无条件及查询 4、以下逻辑中,CPU不需要通过接口电路可直接访问的是_A___; A 中断控制逻辑 B 打印机 C 显示器 D 硬盘 5、在DMA数据传送方式中,数据会经过_D___在存储器和外部设备之间传送。 A CPU B 总线控制器 C 数据总线 D DMA控制器 6、以下哪种中断响应过程的中断类型号来自外部中断控制逻辑_D___; A 软中断 B 非可屏蔽中断 C 内部中断 D 可屏蔽中断 7、当8086访问100H端口时,采用_C___端口寻址方式; A 直接 B 寄存器间接 C 立即 D 相对 8、当8086CPU的INTR=“1”时,且中断允许位IF=“1”,则CPU完成_C___后, 响应该中断请求,进行中断处理; A 当前时钟周期 B 当前总线周期 C当前指令周期 D 下一个指令周期 9、当8253的计数执行单元中的计数值计为0时,输出指示计数为0的信号线是 __D__; A CLK B GATE C D 7~D D OUT 10、IBM PC机基本配置下I/O端口资源是__A__个8位端口; A 1024 B 1024K C 64K D 2M 11、以下数据传送方式中,从硬件资源的耗费方面看,_A___方式耗费的资源最 大; A 无条件传送 B DMA传送 C 中断传送 D 查询传送 12、中断控制逻辑芯片8259中的寄存器IMR的作用是__C__; A 用来寄存有中断请求的所有中断级

微机原理习题集以及答案

1 第一部分 例题与习题 第1章 微型计算机基础 1.1 例 题 1.把十进制数137.875转化为二进制数。P7 解:把十进制数转换成二进制数时,需要对一个数的整数部分和小数部分分别进行处理,得出结果后再合并。 整数部分:一般采用除2取余法 小数部分:一般采用乘2取整法 余数 低位 整数 高位 2 | 137 0.875 2 | 68 × 2 2 | 34 1.750 2 | 17 × 2 2 | 8 1.500 2 | 4 × 2 2 | 2 1.000 1 高位 低位 (137)10=(10000111) 2 (0.875)10=(0.1101)2 所以,(137.875)10=(10001001.111)2 2.把二进制数10011.0111转换为八进制数和十六进制数。P9 解:八进制、十六进制都是从二进制演变而来,三位二进制数对应一位八进制数,四位二进制数对应一位十六进制数,从二进制向八进制、十六进制转换时,把二进制数以小数点为界,对小数点前后的数分别分组进行处理,不足的位数用0补足,整数部分在高位补0,小数部分在低位补0。 (10 011.011 1)2=(010 011.011 100)2=(23.34)8 (1 0011.0111)2=(0001 0011.0111)2=(13.7)16 3.将八进制数23.34转换为二进制数。P9 解:(23.34)8=(010 011.011 100)2=(10011.0111)2 4.X=0.1010,Y=-0.0111,求[X -Y]补,并判断是否有溢出?P11 解:[X -Y]补=[X]补+[-Y]补 [X]补=0.1010 [Y]补=1.1001 [-Y]补=0.0111 0.1010 0.0111 1.0001 + -------------- 1 -------------- 0 -------------- 0 -------------- 1 -------------- 0 -------------- 0 -------------- 0 -------------- 1 ------------- 1 ------------- 1 ------------- 1

微机原理与接口技术习题答案4(1)

第4章汇编语言程序设计 1.已知在BUF的起始处保存有N个字符的ASCII码,编写汇编语言程序实现,将这组字 符串传送到缓冲区BUFR中,并且使字符串的顺序与原来的顺序相反。 解:BUF DB "BONJOUR_BELLE" BUFR DB 100 DUP(?) MOV CX, N LEA SI, BUF LEA DI, BUFR ADD DI,CX DEC DI L1: MOV AL,[SI] MOV [DI],AL INC SI DEC DI LOOP L1 2.利用移位、传送和相加指令实现AX的内容扩大10倍。 解:将扩大后的结果放在DX:AX中,注意到10×AX=8×AX+2×AX。 XOR DX,DX SHL AX, 1 RCL DX, 1 MOV BX,AX MOV CX,DX SHL AX, 1 RCL DX, 1 SHL AX, 1 RCL DX, 1

ADD AX, BX ADC DX, CX 3.在缓冲区V AR中连续存放着3个16位的无符号数,编写程序实现将其按递增关系排列; 如果V AR中保存的为有符号数,则再编写程序实现将其按递减关系排列。 解:V AR DW 1236,-432,3900 XOR SI,,SI MOV AX,V AR[SI] CMP AX, V AR[SI+2] JAE L1 XCHG AX, V AR[SI+2] L1: CMP AX, V AR[SI+4] JAE L2 XCHG AX, V AR[SI+4] L2: MOV V AR[SI], AX MOV AX,V AR[SI+2] CMP AX, V AR[SI+4] JAE L3 XCHG AX, V AR[SI+4] L3: MOV V AR[SI+2], AX 4.编写程序段实现将AL和BL中的每一位依次交叉,得到的16位字保存在DX中,例 如(AL)=01100101B,(BL)=11011010B,则得到的(DX)=10110110 10011001B。解:利用移位指令完成。 XOR DX,DX MOV CX,8 L1: SHR AL,1 RCR DX,1

微机原理与接口技术(楼顺天第二版)第七章习题解答

微机原理与接口技术(楼顺天第二版)习题解答 第7章常用芯片的接口技术 7.1答:(1)地址选择;(2)控制功能;(3)状态指示;(4)速度匹配;(5)转换信息格式;(6)电平转换;(7)可编程性。 7.2 答:I/O接口是指I/O设备与系统总线之间的连接部件;I/O端口是指I/O接口内部可由CPU进行读写操作的各种寄存器,根据存放信息的不同,这些寄存器分别称为数据端口、控制端口和状态端口。 7.3答:I/O端口编址的方式可以分为独立编址和统一编址两种方式。 独立编址方式是指I/O端口与存储器有相互独立的地址空间。 统一编址方式是指I/O端口与存储器共享一个地址空间,所有的存储单元只占用其中的一部分地址,而I/O端口则占用另外一部分地址。 优缺点:独立编址方式的优点之一是存储器的容量可以达到与地址总线所决定的地址空间相同;优点之二是访问I/O端口时的地址位数可以较少,提高总线的利用率。但是缺点是必须设置专门的I/O指令,增加了指令系统和有关硬件的复杂性。 与独立编址方式相比,统一编址方式的优点是无需专门的I/O指令,从而使编程较灵活,但是I/O端口占用了存储器的一部分地址空间,因而影响到系统中的存储器的容量,并且访问存储器和访问I/O端口必须使用相同位数的地址,使指令地址码加长,总线中传送信息量增加。 7.4 答:程序查询方式的优点在于可以防止数据的丢失,实现起来较为简单;缺点是它占用了微处理器的大量时间,实时性较差。 中断方式具有较好的实时性;但在一定程度上增加成本和复杂性。 DMA方式的突出优点是传送过程无须处理器的控制,数据也无须经过微处理器,而是直接在I/O设备与主存储器间进行,因此既节约了微处理器的时间,也使传送速率大大提高;缺点是输入/输出操作占用微处理器时间。 7.5 答:I/O设备种类繁多、数据传送与响应速度差别大、电平信号各不相同、一般不直接具备控制功能和可编程性,所以,一般不能直接将I/O设备连接到系统总线上。 7.6 答:一般不考虑外设的状态且传输数据少时采用无条件传送;当需要查询外设的状态且微机系统规模小,CPU不需做其他事情时,可以采用查询式输入输出;当CPU工作在较为复杂的系统,且需要实时响应对发生的事件处理时,可以采用中断方式;当需要传送的数据较多时,一般采用DMA方式。 7.7 答:20, 1MB,00000H~FFFFFH,16,64K,0000H~FFFFH,10, 1K,000H~3FFH。 7.8答:I/O接口。 7.9 答:I/O设备,系统总线。 7.10 答:数据、状态、控制;双向、I/O接口-CPU,CPU-I/O接口。 7.11 答:状态寄存器。 7.12 答:速度

微型计算机原理与应用试题库答案

《微型计算机原理及应用》试题库及答案 一、填空 1.数制转换 A)125D=(0111 1101 )B =(175 )O=(7D )H=(0001 0010 0101 )BCD B)10110110B=(182 )D =(266)O=(B6 )H=(0001 1000 0010)BCD 2.下述机器数形式可表示的数值范围是(请用十进制形式写出):单字节无符号整数0~ 255 ;单字节有符号整数-127 ~127 。 (注:微型计算机的有符号整数机器码采用补码表示,单字节有符号整数的范围为-128~+127。)3.完成下列各式补码式的运算,并根据计算结果设置标志位SF、ZF、CF、OF。指出运算结果 有效否。 A)00101101+10011100=11001001B SF=1 ZF=0 CF=0 OF=0 B)11011101+10110011=10010000B SF=1 ZF=0 CF=1 OF=0 4.十六进制数2B.4H转换为二进制数是_0010 1011.0100B ,转换为十进制数是_43.25。 5.在浮点加法运算中,在尾数求和之前,一般需要操作,求和之后还需要进行和 舍入等步骤。 6.三态门有三种输出状态:低电平、高电平、高阻态状态。 7.字符“A”的ASCII码为41H,因而字符“E”的ASCII码为45H ,前面加上偶 校验位后代码为。 8.数在计算机中的二进制表示形式称为机器数。 9.在计算机中,无符号书最常用于表示。 10.正数的反码与原码相等。 11.在计算机中浮点数的表示形式有整数和小数两部分组成。 12.微处理器中对每个字所包含的二进制位数叫字节。 13.MISP是微处理的主要指标之一,它表示微处理器在1秒钟内可执行多少

微机原理试题及答案

卷16 一、选择题:(每题1.5分,共18分) 1、DMAC向CPU发出请求信号,CPU响应并交出总线控制权后将( )。 ?反复执行空操作,直到DMA操作结束 ?进入暂停状态, 直到DMA操作结束 ?进入保持状态, 直到DMA操作结束 ?进入等待状态, 直到DMA操作结束 2、有一个实时数据采集系统,要求10ms进行一次数据采集,然后进行数据处理及显 示输出,应采用的数据传送方式为()。 ?无条件传送方式?查询方式 ?中断方式?直接存储器存取方式 3、在数据传送过程中,数据由串行变并行,或由并行变串行的转换可通过()来实 现。?计数器?寄存器?移位寄存器? D触发器 4、8088 CPU输入/输出指令可寻址外设端口的数量最大可达()个。 ?128 ?256 ? 16K ? 64K 5、CPU响应中断后,通过()完成断点的保护。 ?执行开中断指令?执行关中断指令 ?执行PUSH指令?内部自动操作 6、并行接口芯片8255A具有双向数据传送功能的端口是()。 ?PA口?PB口? PC口?控制口 7、8088CPU处理动作的最小时间单位是()。 ?指令周期?时钟周期?机器周期?总线周期 8.堆栈是内存中()。 ?先进先出的ROM区域?后进先出的ROM区域 ?先进先出的RAM区域?后进先出的RAM区域 9、计算机中广泛应用的RS-232C实质上是一种()。 ?串行接口芯片?串行通信规程(协议) ?串行通信接口标准?系统总线标准 10、高速缓冲存储器(CACHE)一般是由()芯片组成。 ?SRAM ?DRAM ?ROM ?EPROM 11、鼠标器是一种()。 ?手持式的作图部件?手持式的光学字符识别设备 ?手持式的座标定位部件?手持式扫描器 12、传送速度单位“bps”的含义是()。

相关主题
文本预览
相关文档 最新文档