文档库 最新最全的文档下载
当前位置:文档库 › 80x86微机原理参考答案

80x86微机原理参考答案

80x86微机原理参考答案
80x86微机原理参考答案

第一章计算机基础(P32)

1-1电子管,晶体管,中小规模集成电路、大规模、超大规模集成电路。

1-2把CPU和一组称为寄存器(Registers)的特殊存储器集成在一片大规模集成电路或超大规模集成电路封装之中,这个器件才被称为微处理器。以微处理器为核心,配上由大规模集成电路制作的只读存储器(ROM)、读写存储器(RAM)、输入/输出、接口电路及系统总线等所组成的计算机,称为微型计算机。微型计算机系统是微型计算机配置相应的系统软件,应用软件及外部设备等.

1-3写出下列机器数的真值:

(1)01101110 (2)10001101

(3)01011001 (4)11001110

答案:

(1)+110 (2)-13(原码) -114(反码)-115(补码)(3)+89 (4)-78(原码)-49(反码)-50(补码)

1-4写出下列二进制数的原码、反码和补码(设字长为8位):

(1)+010111 (2)+101011

(3)-101000 (4)-111111

答案:

(1)[x]原=00010111 [x]反= 00010111 [x]补= 00010111

(2)[x]原=00101011 [x]反= 00101011 [x]补= 00101011

(3)[x]原=10101000 [x]反= 11010111 [x]补= 11011000

(4)[x]原=10111111 [x]反= 11000000 [x]补=11000001

1-5 当下列各二进制数分别代表原码,反码,和补码时,其等效的十进制数值为多少?

(1)00001110 表示原码14,反码14,表示补码为14

(2)11111111 表示原码-127,反码-0,表示补码为-1

(3)10000000 表示原码-0,反码-127,表示补码为-128

(4)10000001 表示原码-1,反码-126,表示补码为-127

1-6 已知x1=+0010100,y1=+0100001,x2=-0010100,y2=-0100001,试计算下列各式。(字长8位)

(1)[x1+y1]补(2)[x1-y2]补

(3)[x2-y2]补(4)[x2+y2]补

(5)[x1+2*y2]补(6)[x2+y2/8]补

答案:

(1)[x1+y1]补=[00010100+00100001]补=[00110101]补=00110101

(2)[x1-y2]补=[x1]补+[-y2]补=00010100+00100001=00110101

(3)[x2-y2]补=[x2]补+[-y2]补=11101100+00100001=00001101

(4)[x2+y2]补=[x2]补+[y2]补=11101100+11011111=11001011

(5)[x1+2*y2]补=[x1]补+[2*y2]补=00010100+10111110=11010010

(6)[x2+y2/8]补=11101100+[y2/8]补=11101100+11111100=11101000

1-7 用补码来完成下列运算,并判断有无溢出产生(字长为8位):

(1)85+60 (2)-85+60

(3)85-60 (4)-85-60

答案:

(1)[x]补+[y]补=01010101+00111100=10010001 = -111,有溢出

(2)[x]补+[y]补=10101011+00111100=11100111 =-25,无溢出

(3)[x]补+[y]补= 01010101+11000100=00011001 =25,无溢出

(4)[x]补+[y]补=10101011+11000100=01101111 =111,有溢出

1-8在微型计算机中存放的两个补码数,试用补码加法完成计算,并判断有无溢出产生。

(1)[x]补+[y]补=01001010+01100001=10101011

有溢出

(2)[x]补-[y]补=01101100-01010110 = 01101100+10101010=00010110无溢出

注:[ X]补-[Y]补=[X]补+[-Y]补

[-Y]补的算法:将[Y]补连同符号位一起按位取反加1

1-9 试将下列各数转换成BCD码:

(1)(30)10 (2)(127)10

(3)00100010B (4)74H

答案:

(1)(30)10 = (0011 0000)BCD

(2)(127)10 = (0001 0010 0111)BCD

(3)00100010B = 34 = (0011 0100)BCD

(4)74H = (116)10 = (0001 0001 0110)BCD

1-10 下列各数代表什么ASCII字符:

(1)41H (2) 72H

(3) 65H (4) 20H

答案:

(1)41H =(0100 0001)2,代表字符A。

(2)72H = (0111 0010)2,代表字符r。

(3)65H = (0110 0101)2,代表字符e。

(4)20H = (32)10 = (0010 0000)2, 代表SP。

1-11 写出下列字符的ASCII码:

9,*,=,!,$

答案: 9 0011 1001

* 0010 1010

= 0011 1101

! 0010 0001

$ 0010 0001

1-19 地址总线:传递地址信息的总线

数据总线:传输数据

控制总线:传输控制信号,时序信号和状态信息

1-20 指令:人们规定计算机执行特定操作(加、减、乘、除、移位……)的命令。指令系统:计算机全部指令的集合

1-21 试用示意图说明内存储器的结构和读、写操作。

参考课本P22

第二章 80X86/Pentium微处理器(P90)

2-3 在执行指令期间,EU能直接访问存储器吗?为什么?

答:不能,因为CPU由EU和BIU组成,在指令执行期间,EU负责到BIU指令队列去取指令,执行指令,如果需要从存储器取数据,由BIU负责总线操作。

2-7 8086/8088有几位状态位?有几位控制位?其含义分别是什么?

答:8086/8088有6位状态位,3位控制位。

状态位:CF进位标志;PF奇偶标志;AF辅助进位标志;ZF零标志;SF符号标志,OF溢出标志。

控制位:IF 允许中断标志;DF方向标志;TF陷阱标志

2-9 简述A0与/BHE在8086系统中的作用。

答:8086有16根数据线,可以在一个总线读写周期中,读写一个字数据。8086CPU 配置的内存分为奇地址和偶地址存储体。如果要读写一个字数据,需要分别从奇地址和偶地址存储体读写一个字节数据。由A0=0选通偶地址存储体,一个字节数据送到低八位数据线D0~D7;由/BHE=0选通奇地址存储体,一个字节数据送到高八位数据线D8~D15。

2-15物理地址:存储区域的某一单元地址,地址信息是20位二进制代码. CPU 是以物理地址访问存储器.

逻辑地址:编程时采用,由段基址和偏移量组成.8086 CPU中的每个存储元在存储体中的位置都可以使用实际地址和逻辑地址来表示。同一物理地址可对应多个逻辑地址

2-16 段寄存器指示的存储区域的起始地址称为段基址,偏移量是在某段内指定存储单元到段基址的距离。段基址和偏移量共同组成物理地址,物理地址PA=

段基地址×16 + 偏移量

2-17 A0000H-AFFFFh

2-18 B000H

2-19设双字12345678H的起始地址是A001H,试说明这个双字在存储器中如何存放?

答:地址为A001H、A002H、A003H、A004H的存储单元分别存放:78H、56H、34H、12H。存放原则:低地址存放低位数据,依次存放在连续的存储单元中。

2-20已知堆栈段寄存器SS=A000H,堆栈指示器SP=0100H,试将数据1234ABCDH 推入堆栈,画出进栈示意图。最后栈顶SP=?

答: SP=00FCH

物理地址 0A00FCH---0A00FFH的内容依次为CD,AB,34,12.

注:SP:堆栈栈顶指示器,16位寄存器,存放栈顶的偏移地址。

2-21 试求出下列运算后的各个状态标志,并说明进位标志和溢出标志的区别。(1)1278H+3469H

(2)54E3H-27A0H

(3)3881H+3597H

(4)01E3H-01E3H

解:(1) 0001 0010 0111 1000

+ 0011 0100 0110 1001

0100 0110 1110 0001

CF=0 PF=1 AF=1 ZF=0 SF=0 OF=0

(2) 0101 0100 1110 0011

+ 1101 1000 0110 0000

1 0010 1101 0100 0011

CF=0 PF=0 AF=0 ZF=0 SF=0 OF=0

(3) 0011 1000 1000 0001

+ 0011 0101 1001 0111

0110 1110 0001 1000

CF=0 PF=1 AF=0 ZF=0 SF=0 OF=0

(4) 0000 0001 1110 0011

+ 1111 1110 0001 1101

1 0000 0000 0000 0000

CF=0 PF=1 AF=0 ZF=1 SF=0 OF=0

注:16位操作数的最低二进制位:b0、最高二进制位:b15

AF:看b3是否向b4有进(借)位:辅助进借位

对减法运算,若采用补码的加法进行,则CF取反。

2-24 什么是时钟周期,机器周期,总线周期,什么是指令周期?

参考课本P55。

第三章 80X86/Pentium指令系统(P135)

3-4 (1) 7237H (2) D5B4H (3)637DH

3-5寻址方式:

(1)MOV SI,2100H (2)MOV CX,DISP[BX]

(3)MOV [SI],AX (4)ADC AX,[BX][SI]

(5)AND AX,DX (6)MOV AX,[BX+10H]

(7)MOV AX,ES:[BX] (8)MOV AX,[BX+SI+20H]

(9)MOV [BP],CX (10)PUSH DS

地址表达式:标号/变量/常量+基址寄存器+变址寄存器

[地址表达式]:存储器操作数,以地址表达式的值为偏移地址

3-7 (4) (10) (14)正确。

3-8(1)AX=3355H, SP=1FFFEH

(2) AX=3355H, DX=4466H, SP=1FFFEH

3-9 BX=4154H,[2F246H]=6F30H

3-10 BX=139EH

3-11 SI= 0180H DS=2000H

3-12 (1) CL=0F6H

(2) CX=5678h

(3)BX=0056H, AX=1E40H

(4)SI=00F6H, [SI]=0024H

(5)AX=5678H, [09226H]=1234H

3-13 (1)不影响

(2)AF=0,CF=1 OF=1 SF=0 ZF=0

3-14 (1)MOV AX,0 XOR AX,AX SUB AX, AX

(2)MOV CL,4

ROR BL,CL

(3)MOV AX,N1

MOV BX,N1

CWD ;对被除数进行符号扩展

IDIV BX

MOV M1,AX ;商放在AX中

MOV M2,DX ;余数放在DX中

(4) AND BX,0F7AFH 或OR 0850H

(5) XOR AX 4020H

(6) TEST DX,0201H

(7) OR CX,1

3-15 (1)LEA BX,BLOCK

MOV BX,BX+10

MOV AX,[BX]

(2)LEA BX ,BLOCK

MOV AX,[BX+10]

(3)LEA BX,BLOCK

MOV SI,10

MOV AX,[BX+SI]

(4) MOV AX, [BLOCK+10]

3-16 (1)60H输出到端口580H (2)8060H输出到580H 端口

(3)将4FH从端口40H读入到AL (4)从端口40H读一个16位的数到AX (5)将60H输出到端口45H (6)将8060H输出到端口45H

3-17

NUM1 DW 4148H,2816H

NUM2 DW 2258H,8452H

(1) MOV AX,NUM2

ADD NUM1,AX

MOV AX,NUM2+2

ADD NUM1+2,AX

(2) RES DB 2DUP(?)

MOV AL,BYTE PTR NUM1

ADD AL,BYTE PTR NUM1+1

ADD AL,BYTE PTR NUM1+2

ADD AL,BYTE PTR NUM1+3

MOV RES,AL

(3) 假设存放的数据为无符号数

MOV SI,OFFSET NUM1

XOR AX,AX

MOV CX,8

LP:ADD AL,[SI]

ADC AH,0

INC SI

LOOP LP

MOV RES,AL

MOV RES+1,AH

假设存放的数据为带符号数

MOV SI,OFFSET NUM1

XOR BX,BX

MOV CX,8

LP:MOV AL,[SI]

CBW

ADD BX,AX

INC SI

LOOP LP

MOV RES,AL

MOV RES+1,AH

(4) MOV AX,NUM1

ADD NUM2,AX

MOV AX,NUM1+2

ADC NUM2+2,AX

3-18

(1) XOR AX, AX ;AX清零

LEA SI, NUM1

MOV CX, 8

LOP: ADD AL, [SI]

DAA

ADC AH, 0 ;AF清零

INC SI

LOOP LOP

MOV RES, AL

MOV RES+1, AH

(2)MOV AL, NUM1

SUB AL, NUM2

DAS

MOV RES, AL

差=90H;CF=1

3-21

(1)BX=9AH (2)BX=61H (3)BX=8071H (4)BX=10F7H (5)BX=0FF1CH

3-22(1)DX=0006H BX=0004H

(2)SP=1FFFEH [SP]=0FFFEH

(3)CX=0004H BX=0004H

(4)AX=8094H CF=0

(5)MOV AL, [SI]

(6)AL=0CCH CF=0

AL=32H

(7)SI=0009H

(8)DI=0009H

(9)[DI]=94H

(10) AX=17C6H DX=8094H

(11) AH=84H, BL=04H

(12)IP=17C6H

3-23

(1)将自FIRST开始的存储区中的连续10个字节传送到从SECOND开始的存储区中。

(2)将自0404H开始的存储区中连续256个字节全部赋0值。

3-26 MOV BX,0A80H

MOV AL,5

XLAT

3-27

(1)IP=1256H (2)IP=3280H (3)IP=2450H

3-28

CS=2000H; IP=009AH; SP=0F178H; [SP]=8FH

[SP+1]=3DH; [SP+2]=50H; [SP+3]=40H;

3-29

MOV BL,AL

CMP AL,01H

JZ LAB1

CMP AL,02H

JZ LAB2

CMP AL,04H

JZ LAB3

AND BL,07H

JNZ OK

……

OK: ……

LAB1: ……

LAB2: ……

LAB3: ……

3-31

MOV AX,0032H

CMP AX,X

JL N_HIGH

MOV BX,X

SUB BX,Y

JO OVERFLOW

JNS NEXT

NEG BX

NEXT: MOV RESULT,BX

N_HIGH: ……

OVERFLOW: ……

第四章汇编语言程序设计(P195)4-2 内存分配和预置数据

V AR1 DB 12,-12H,3 DUP(0,0FFH)

V AR2 DB 100 DUP(0,2 DUP(1,2),0,3)

V AR3 DB ‘WELCOME TO’

V AR4 DW VAR3+6 ;取其偏移量给V AR4

V AR5 DD V AR3 ;取其偏移量和段基址给V AR5

4-3

(1)DATA1 DB 86H,27H,23H,00H,24H,1AH

(2)DATA2 DW 0B430H,1062H

(3)DATA3 DB 4DUP(20H),20,0,6DUP(1,2)

4-4 (1)2

(2)2

(3)1

(4)10

4-5

(1)VAR1的偏移量是0030H;V AR2的偏移量是003AH

(2)CNT=0010H

(3)VAR2+2单元的内容是02H

4-10

DATA SEGMENT

X DB 4 DUP(?)

Y DB 4 DUP(?)

Z DB 4 DUP(?),0 ;定义X,Y,Z为字节变量

DATA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DAT A

ST ART: MOV AX,DAT A

MOV DS,AX

MOV AX,WORD PTR X[0]

ADD AX,WORD PTR Y[0] ;X,Y低16位相加

MOV WORD PTR Z[0],AX ;结果存入Z的低16位

MOV AX,WORD PTR X[2]

ADC AX,WORD PTR Y[2] ;X,Y高16位相加

MOV WORD PTR Z[2],AX ;结果存入Z的高16位

JNC O K

MOV AL,1

MOV Z+4,AL ;保存进位

OK: MOV AH,4CH

INT 21H

CODE ENDS

END ST ART

4-11

DATA SEGMENT

X DB 4 DUP(?)

Y DB 4 DUP(?)

Z DB 4 DUP(?) ;定义X,Y,Z为字节变量

DATA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA

START:MOV AX,DATA

MOV DS,AX

MOV DL,0

MOV AX,WORD PTR X

SUB AX,WORD PTR Y ;X,Y低16位相减

MOV WORD PTR Z,AX ;结果存入Z的低16位MOV AX,WORD PTR X[2]

SBB AX,WORD PTR Y[2] ;X,Y高16位相加

MOV WORD PTR Z[2],AX ;结果存入Z的高16位JNO OK

MOV DL,-1 ;溢出

OK: MOV AH,4CH

INT 21H

CODE ENDS

END START

4-12

(1)

DATA SEGMENT

DB 100 DUP(?)

MESG DB 'ERROR INPUT!$'

DATA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DAT A

ST ART PROC FAR

PUSH DS

MOV AX,0

PUSH AX

MOV AX,DAT A

MOV DS,AX

MOV AH,01H

INT 21H ;从键盘输入一个字符,该字符ASCII码送入AL CMP AL,41H

JB ERROR

CMP AL,4AH

JA ERROR

CMP AL,41H

JE P0 ;判断输入字符是为'A',则跳转到P0

...

CMP AL,4AH

JE P9 ;判断输入字符是为'J',则跳转到P9

P0: ...

RET

...

P9: ...

RET

ERROR: M OV DX,OFFSET MESG

MOV AH,09H

INT 21H ;输入字符非'A'~'J'则输出错误信息

RET

ST ART ENDP

CODE ENDS

END ST ART

(2)

DATA SEGMENT

BASE DW P0,P1,P2,P3,P4,P5,P6,P7,P8,P9

MESG DB 'ERROR INPUT!$'

DATA ENDS

ST ACK SEGMENT PARA ST ACK 'ST ACK'

DB 100 DUP(?)

ST ACK ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DAT A

ST ART PROC FAR

PUSH DS

MOV AX,0

PUSH AX

MOV AX,DAT A

MOV DS,AX

MOV BX,0 ;BX为跳转表BASE内寻址编号,清零

MOV AH,01H

INT 21H ;从键盘输入字符命令

CMP AL,41H

JB ERROR

CMP AL,4AH

JA ERROR ;输入字符非'A'~'J'则跳转到ERROR

MOV BL,AL

SUB B L,41H ;得编号

SHL BX,1 ;表内偏移量=编号*2

JMP BASE[BX];查跳转表跳转到相应的子程序

ERROR: M OV DX,OFFSET MESG

MOV AH,09H

INT 21H ;输出错误信息

RET

P0: ...

RET

...

P9: ...

RET

ST ART ENDP

CODE ENDS

END ST ART

4-13

CODE SEGMENT

ASSUME CS:CODE,DS:DATA

START:MOV AX,DATA

MOV DS,AX

MOV GOOD,0

MOV PASS,0

MOV BAD,0

XOR BX,BX ;bx存放全年级统计总成绩XOR SI,SI

MOV CX,100

LP: MOV AH,BUF[SI]

CMP AH,85H

JA GS

CMP AH,60H

JAE PS

MOV AL,BAD

ADD AL,1

DAA

MOV BAD,AL

JMP AGAIN

GS: MOV AL,GOOD

ADD AL,1

DAA

MOV GOOD,AL

JMP AGAIN

PS: MOV AL,PASS

ADD AL,1

DAA

MOV PASS,AL

AGAIN: MOV AL,BL

ADD AL,AH

DAA

MOV BL,AL

MOV AL,BH

ADC AL,0

DAA

MOV BH,AL

INC SI

LOOP LP

MOV A VRG,BH

MOV AH,4CH

INT 21H

CODE ENDS

END START

4-15

DATA SEGMENT

FIRST DB '...$' ;定义字符串COUNT EQU 100 ;定义字符串长度RESULT DW? ;定义存放结果单元DATA ENDS

STACK SEGMENT PARA STACK 'STACK' DB 100 DUP(?)

STACK ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA

START:MOV AX,DATA

MOV DS,AX

MOV BX,OFFSET FIRST ;建立数据指针MOV CX,COUNT ;设置循环次数MOV DX,0 ;清零计数器

LP: CMP BYTE PTR [BX],'A'

JNZ NEXT ;非'A'则转到NEXT

INC DX ;是'A'则计数器DX加1 NEXT: INC BX ;调整数据指针LOOP LP ;循环100次

MOV RESULT,DX ;结果存入RESULT

MOV AH,4CH

INT 21H

CODE ENDS

END START

4-17

DATA SEGMENT

DATA_W DW X1,X2,…

COUNT EQU ($-DATA_W)/2

COUT1 DW 0

COUT2 DW 0

COUT3 DW 0

DATA ENDS

STACK SEGMENT PARA STACK 'STACK'

DB 100 DUP(?)

STACK ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA

START:MOV AX,DATA

MOV DS,AX

MOV BX,OFFSET DATA_W ;建立数据指针

MOV CX,COUNT ;设置循环次数

LP: CMP WORD PTR [BX],0

JGE NEXT

INC COUT2

JMP AGAIN

NEXT: JG NEXT2

INC COUT3

JMP AGAIN

NEXT2: INC COUT1

AGAIN:INC BX ;调整数据指针

INC BX

LOOP LP ;循环100次

MOV AH,4CH

INT 21H

CODE ENDS

END START

4-18

DATA ESGMENT

ARRAY DB D1,D2,...,DN ;定义字节数组

COUNT EQU $-ARRAY ;字节数组长度赋予符号名COUNT MAX DB ?

MIN DB ?

DATA ENDS

STACK SEGMENT PARA STACK 'STACK'

DB 100 DUP(?)

STACK ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA

START:MOV AX,DATA

MOV DS,AX

MOV BX,OFFSET ARRAY ;建立数据指针

MOV CX,COUNT-1 ;设置循环次数

MOV AL,[BX]

MOV MAX,AL ;MAX赋予初值为ARRAY的第一个数据MOV MIN,AL ;MIN赋予初值为ARRAY的第一个数据LP: INC BX ;调整数据指针

MOV AL,[BX] ;取数据

CMP AL,MIN ;与MIN进行比较

JNB BIG ;比MIN大则跳转BIG判断是否最大值

MOV MIN,AL ;小于或等于MIN则给MIN重新赋值

JMP NEXT ;比较下一个数据

BIG: CMP AL,MAX ;与MAX进行比较

JNA NEXT ;比MAX小则比较下一个数据

MOV MAX,AL ;大于或等于MAX则给MAX重新赋值NEXT: LOOP LP

MOV AH,4CH

INT 21H

CODE ENDS

END START

4-19

DATA SEGMENT

BLOCK DB X1,X2,…

COUNT EQU 256

MAX DB ?

DATA ENDS

STACK SEGMENT PARA STACK 'STACK'

DB 100 DUP(?)

STACK ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA

START:MOV AX,DATA

MOV DS,AX

MOV MAX,0

MOV BX,OFFSET BLOCK ;建立数据指针

MOV CX,COUNT ;设置循环次数

LP: MOV AL, BYTE PTR [BX]

CMP AL,0

JGE NEXT

NEG AL

NEXT: CMP MAX,AL

JAE AGAIN

MOV MAX,AL

AGAIN:INC BX ;调整数据指针

LOOP LP

MOV AH,4CH

INT 21H

CODE ENDS

END START

4-22

DATA SEGMENT

STRING DB 'S1S2 (80)

COUNT EQU 80

DATA ENDS

ST ACK SEGMENT PARA ST ACK 'ST ACK'

DB 100 DUP(?)

ST ACK ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DAT A

ST ART: MOV AX,DAT A

MOV DS,AX

MOV DX,0 ;清零计数器DX

MOV BX,OFFSET STRING;建立指针

MOV CX,COUNT ;置循环次数

LP: MOV AL,[BX] ;取字符

CMP AL,20H ;判断字符是否为空格

JZ FOUND ;是则跳转到FOUND

INC BX ;否则调整指针查下一个字符

INC DX ;同时调整计数器

LOOP LP ;循环80次

MOV DL,0FFH ;循环80次均找不到则给DL赋值为-1 FOUND: MOV CL,DL ;结果DL存入CL

MOV AH,4CH

INT 21H

CODE ENDS

END ST ART

4-23

MOV CH,0

MOV SI,0

LP: CMP STRING[SI],0DH

JZ OVER

INC CH

INC SI

JMP LP

OVER:

4-26

;模块1,文件名:MAIN.ASM

EXTRN DISPLAY:FAR

PUBLIC MESG

DATA1 SEGMENT

MESG DB 'ASSEMBLER$'

DATA1 ENDS

ST ACK SEGMENT PARA ST ACK 'ST ACK' DB 100 DUP(?)

ST ACK ENDS

CODE1 SEGMENT

ASSUME CS:CODE1,DS:DAT A1 MAIN: MOV AX,DAT A

MOV DS,AX

CALL FAR PTR DISPLAY

MOV AH,4CH

INT 21H

CODE1 ENDS

END MAIN

;模块2,文件名:DISP.ASM

EXTRN MESG:FAR

PUBLIC DISPLAY

CODE2 SEGMENT

ASSUME CS:CODE2

DISPLAY PROC FAR

MOV DX,OFFSET MESG

MOV AH,09H

INT 21H

RET

DISPLAY ENDP

CODE2 ENDS

END

4-30

(1);使用地址表方式

ST ACK SEGMENT PARA ST ACK 'ST ACK'

DB 100 DUP(?)

ST ACK ENDS

DATA SEGMENT

NUM1 DB 26H

NUM2 DW 168AH

V AR DB 8,16

ASCBUF DB 32 DUP(0)

T ABLE DW 3 DUP(0)

DATA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DAT A

ST ART: MOV AX,DAT A

MOV DS,AX

MOV T ABLE,OFFSET NUM1

MOV T ABLE+2,OFFSET NUM2

MOV T ABLE+4,OFFSET ASCBUF

LEA SI,T ABLE

CALL BINTOASC

CALL DISP

MOV AH,4CH

INT 21H

BINTOASC PROC NEAR

MOV DI,[SI] ;取得NUM1地址

MOV AL,[DI] ;取得NUM1

MOV DI,[SI+2] ;取得NUM2地址

MOV BX,[DI] ;取得NUM2

MOV DI,[SI+4] ;取得ASCBUF首地址

MOV CX,8

CNUM1: SHL AL,1 ;NUM1左移1位

JC NUM11 ;若这位为1,则转NUM11,并将31H写入ASCBUF

MOV AH,30H ;若这位为0,则将30H写入ASCBUF

MOV [DI],AH

JMP NEXT1

NUM11: MOV AH,31H

MOV [DI],AH

NEXT1: INC DI

LOOP CNUM1

MOV CX,16

CNUM2: SHL BX,1 ;NUM2左移1位

JC NUM21 ;若这位为1,则转NUM21,并将31H写入ASCBUF

MOV AH,30H ;若这位为0,则将30H写入ASCBUF

MOV [DI],AH

JMP NEXT2

NUM21: MOV AH,31H

MOV [DI],AH

NEXT2: INC DI

LOOP CNUM2

MOV AH,24H

MOV [DI],AH ;为打印字符串,在ASCBUF末尾写入'$'

RET

BINTOASC ENDP

DISP PROC NEAR

LEA DX,ASCBUF

MOV AH,09H

INT 21H

RET

DISP ENDP

CODE ENDS

END ST ART

(2);使用堆栈方式

ST ACK SEGMENT PARA ST ACK 'ST ACK'

DB 100 DUP(?)

ST ACK ENDS

DATA SEGMENT

NUM1 DB 26H

NUM2 DW 168AH

V AR DB 8,16

ASCBUF DB 32 DUP(0)

T ABLE DW 3 DUP(0)

DATA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DAT A

ST ART: MOV AX,DAT A

MOV DS,AX

LEA BX,NUM1

PUSH BX

LEA BX,NUM2

PUSH BX

LEA BX,ASCBUF

CALL BINTOASC

CALL DISP

MOV AH,4CH

INT 21H

BINTOASC PROC NEAR

PUSH AX

PUSH BX

PUSH CX

PUSH BP

PUSH DI

MOV BP,SP

MOV DI,[BP+16] ;取得NUM1地址

MOV AL,[DI] ;取得NUM1

MOV DI,[BP+14] ;取得NUM2地址

MOV BX,[DI] ;取得NUM2

MOV DI,[BP+12] ;取得ASCBUF首地址

MOV CX,8

CNUM1: SHL AL,1 ;NUM1左移1位

JC NUM11 ;若这位为1,则转NUM11,并将31H写入ASCBUF

MOV AH,30H ;若这位为0,则将30H写入ASCBUF

MOV [DI],AH

JMP NEXT1

NUM11: MOV AH,31H

MOV [DI],AH

NEXT1: INC DI

LOOP CNUM1

MOV CX,16

CNUM2: SHL BX,1 ;NUM2左移1位

JC NUM21 ;若这位为1,则转NUM21,并将31H写入ASCBUF

MOV AH,30H ;若这位为0,则将30H写入ASCBUF

MOV [DI],AH

JMP NEXT2

NUM21: MOV AH,31H

MOV [DI],AH

NEXT2: INC DI

LOOP CNUM2

MOV AH,24H

MOV [DI],AH

POP DI

POP BP

POP CX

POP BX

POP AX

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

《微机原理及应用》试题库 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分,共15分) 1、在计算机中,对带符号数的运算均采用补码。带符号负数1100 0011的补码为_10111101_。2、单片机通常采用“三总线”的应用模式,芯片内部设有单独的地址总线、数据总线_ 和控制总线。 3、当使用80C51单片机时,需要扩展外部程序存储器,此时EA应为_0__。 4、若(A)=B3H,(R0)=A8H,执行指令XRL A,R0之后,(A)=_1BH__。 5、在80C51单片机中,带借位减法SUBB指令中,差的D7需借位时,_CY_=1,差的D3需借位时,AC_=1。 6、80C51单片机中,在调用子程序前,用_PUSH__指令将子程序中所需数据压入堆栈,进入执行子程序时,再用___POP__指令从堆栈中弹出数据。 7、在十六进制数与ASCII码值的转换过程中,当十六进制数在0~9之间时,其对应的ASCII码值为该十六进制数加___30H______。 8、外部中断INT0和INT1有两种触发方式:___电平触发方式_____和__边沿触发方式__。 9、在单片机串行通信中,依发送与接收设备时钟的配置情况,串行通信可以分为 __异步通信___和__同步通信_。10、若累加器A中的数据为

0111 0010B,则PSW中的P=__0___。二、选择题(每题1分,共15分) 1、单片机是在一片集成电路芯片上集成了以下部分,除了( D ) A、微处理器 B、存储器 C、I/O接口电路 D、串口通信接口2、一个机器周期包含多少个晶振周期(D ) A、2 B、6 C、8 D、12 3、80C51单片机有21个特殊功能寄存器,其中与串行口相关的有以下几个,除了( B ) A、SBUF B、TCON C、SCON D、PCON 4、 80C51系列单片机具有4个8位的并行I/O口,其中哪个口工作时需要外接上拉电阻(A ) A、P0 B、P1 C、P2 D、P3 5、寄存器中的内容为地址,从该地址去取操作数的寻址方式称为( C ) A、寄存器寻址 B、直接寻址 C、寄存器间接寻址 D、变址寻址6、源地址为1005H。目的'地址为 0F87H。当执行指令“JC rel”时,rel为( B )。A、7EH B、80H C、82H D、84H 7、若(R0)=30H,(30H)=75H,(75H)=90H,执行指令MOV A,@R0后,(A)=__B____。A、30H B、75H C、90H D、00H 8、下列哪个语句是起始地址设置伪指令( A )。A、ORG B、END C、DW D、EQU 9、在80C51单片机中,各中断优先级最低的是( D )。A、外部中断0 B、外部中断1 C、定时器0 D、计数器1 10、80C51单片机的中断响应时间至少需要( C )个完整的机器周期。A、1 B、2 C、3 D、5 11、在80C51单片机中,

微机原理-期末考试题库及答案(含3套试卷)

微型计算机原理与接口技术综合测试题一 一、单项选择题(下面题只有一个答案是正确的,选择正确答案填入空白处) 1.8086CPU通过(1 )控制线来区分是存储器访问,还是I/O访问,当CPU执行IN AL,DX 指令时,该信号线为(2 )电平。 (1) A. M/ B. C. ALE D. N/ (2) A. 高 B. 低 C. ECL D. CMOS 2.n+1位有符号数x的补码表示范围为()。 A. -2n < x < 2n B. -2n ≤ x ≤ 2n -1 C. -2n -1 ≤ x ≤ 2n-1 D. -2n < x ≤ 2n 3.若要使寄存器AL中的高4位不变,低4位为0,所用指令为()。 A. AND AL, 0FH B. AND AL, 0FOH C. OR AL, 0FH D. OR AL 0FOH 4.下列MOV指令中,不正确的指令是()。 A. MOV AX, BX B. MOV AX, [BX] C. MOV AX, CX D. MOV AX, [CX] 5.中断指令INT 17H的中断服务程序的入口地址放在中断向量表地址()开始的4个存贮单元内。 A. 00017H B. 00068H C. 0005CH D. 0005EH 6.条件转移指令JNE的条件是()。 A. CF=0 B. CF=1 C. ZF=0 D. ZF=1 7. 在8086/8088 CPU中,一个最基本的总线读写周期由(1 )时钟周期(T状态)组成,在T1状态,CPU往总线上发(2 )信息。 ⑴ A. 1个 B. 2个 C. 4个 D. 6个

⑵ A. 数据 B . 地址 C. 状态 D. 其它 8. 8086有两种工作模式, 最小模式的特点是(1 ),最大模式的特点是(2 )。 ⑴ A. CPU提供全部控制信号 B. 由编程进行模式设定 C. 不需要8286收发器 D. 需要总线控制器8288 ⑵ A. M/ 引脚可直接引用 B. 由编程进行模式设定 C. 需要总线控制器8288 D. 适用于单一处理机系统 9.在8086微机系统的RAM 存储单元器0000H:002CH开始依次存放23H,0FFH,00H,和0F0H四个字节,该向量对应的中断号是( )。 A. 0AH B. 0BH C. 0CH D. 0DH 10.真值超出机器数表示范围称为溢出,,此时标志寄存器中的( )位被置位 A. OF B AF C PF D CF 11.8086 系统中内存储器地址空间为1M,而在进行I/O读写是,有效的地址线是( ) A . 高16位 B. 低16位 C. 高8位 D. 低8位 12.8086 CPU中段寄存器用来存放( ) A. 存储器的物理地址 B. 存储器的逻辑地址 C. 存储器的段基值 D. 存储器的起始地址 13.8259A可编程中断控制器的中断服务寄存器ISR用于( ) A.记忆正在处理中的中断 B. 存放从外设来的中断请求信号 C.允许向CPU发中断请求 D.禁止向CPU发中断请求 14.8253 可编程定时/计数器的计数范围是( ) A. 0-255 B. 1-256 C. 0-65535 D. 1-65536 15. 在8086中,(BX)=8282H,且题中指令已在队列中,则执行INC [BX]指令需要的总

微机原理简答

1.一般微处理器内部结构由哪三部分组成?P6 运算器(算术逻辑单元),控制器,内部寄存器 2.接口按功能可分为那几类?P242 通用接口和专用接口 3.3.接口的主要功能有那几种?P243 缓冲锁存数据,地址译码,传送命令,码制转换,电平转换 4.典型的微机硬件结构是用什么将各部位连接起来的? 总线 5.什么是计算机的位长?P8 计算机数据总线上一次能处理的信息的位数即位长 6.什么是CPU总线的带宽?P23 总线的带宽是指总线能同时传输的数据位数量 7.什么是CPU总线的工作频率?P23 用于协调总线上各种操作的时钟频率 8.什么是Intel8086指令的直接寻址方式?P77 指令中以位移量方式直接给出操作数的有效地址EA 9.64*1bit的DRAM芯片通常有多少个地址线引脚和数据线引脚? 6地址线引脚和1数据线引脚 10.Intel8086系统中条件转移指令的转移范围有什么限制? -128—127 11.中断向量表: 也称中断入口地址表。该表说明了中断类型号和中断服务程序的入口地址之间的联系。P235 12.中断:就是使CPU暂停运行原来的程序,按照更为急迫事件的需要转去执行为中断源服务的程序,待该程序处理完后,再返回运行原程序,此即中断。P223 13.总线:是用来传送信息的公共导线,可分为数据总线,地址总线,控制总线。P4??? 14.有效地址:表示所寻址的地址单元距离段起地址的之间的偏移字节的多少,也称偏移地址。P69 15.指令周期:指令周期是执行一条指令所需要的时间,一般由若干个机器周期组成,是从取指令、分析指令到执行完所需的全部时间。百度百科。P10

微机原理习题集以及答案

第一部分 例题与习题 第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. 设某8253通道1工作在方式0,按BCD方式计数,计数初值为400,通道0—控制寄存器的端口地址依次为80H~83H,试写出8253的初始化程序。(8253方式控制字:D7D6:计数器选择;D5D4:读写控制;D3D2D1:工作方式选择D0:计数方式选择) 控制字: 01 11 000 1 71H 答:MOV AL,71H OUT 83H,AL MOV AL,00H OUT 81H,AL MOV AL,04H OUT 81H,AL 2. 某一8255A芯片的端口地址为90H~93H,现设置该接口芯片的PA口为基本输入方式、PB口为基本输出方式,PC口为输入方式,其方式选择控制字如下:D7=1,D6 D5 A 口工作方式,D4 A口输入输出,D3 PC7-PC4输入输出,D2 B口工作方式,D1 B口输入输出,D0 PC3-PC0输入输出。执行如下程序段后,PB口输出何种波形? L1:MOV AL,01H OUT 91H,AL CALL D20MS;延时20ms MOV AL,00H OUT 91H,AL CALL D20MS;延时20ms JMP L1 答:MOV AL,99H OUT 93H,AL 方波 3. 8253的计数器2工作于方式2,其计数时钟CLK2,为100KHz,输出信号OUT2作定时中断申请,定时间隔为8ms,试计算其计数初值N? 答:800 4. 某系统中有一片8253,其四个端口地址为310H,312H,314H,316H,计数脉冲频率为1MHz、BCD码计数,试编写计数器0输出频率为2KHz方波的初始化程序。(8253方

式控制字:D7D6:计数器选择;D5D4:读写控制;D3D2D1:工作方式选择D0:计数方式选择) 计数初值=10^6/2*10^3=500 控制字: 00110111 37H 答: MOV AL,37H MOV DX,316H OUT DX,AL MOV DX,310H MOV AL,00H OUT DX,AL MOV AL,05H OUT DX,AL 5. 假如8259A已被编程,ICW2=0AH,若连接在8259A的IR3端的外设提出中断申请,它的中断向量的存放地址是什么? 答:28H,29H,2AH,2BH 6. 计算机有哪些主要应用领域? 答:科学计算,数据处理,过程控制,信息通信,计算机辅助设计 7. 什么叫微处理器?什么叫微型计算机?什么叫微型计算机系统? 答:微处理器是指采用大规模集成电路技术,将具有运算控制功能的电路集成在一块芯片上的大规模集成电路,微型机即个人计算机,微型计算机系统是指以微型机为核心,配以相应的外部设备,及软件所构成的系统。 8. 8086内部的寄存器由哪几种类型组成?各自的作用是什么? 答:通用寄存器,段寄存器,指令指针寄存器,标志寄存器 9. 8086是多少位的系统?在数据总线上是怎么实现的? 答:"8086的机器字长是16位,8086使用40个引脚的16个做地址/数据复用引腿来传输数据,一次读写过程由一个基本总线周期完成,它由4个时钟(CLK)周期组成,按时间顺序定义为T1、T2、T3、T4。在T1期间8086发出访问目的地的地址信号和地址锁存选

微机原理习题及答案

一、选择 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、移码

北京科技大学微机原理简答题

微机原理简答题,整整花了我一上午大家加油昂来源:王鹏的日志 第二章8086体系结构与8086CPU 机械085 王鹏1.8086CPU由哪两部分构成?它们的主要功能是什么? 答:8086CPU由两部分组成:指令执行部件(EU)和总线接口部件(BIU) 指令执行部件(EU)主要由算术逻辑运算单元(ALU)、标志寄存器FR、通用寄存器组和EU 控制器等4个部件组成,其主要功能是执行指令。总线接口部件(BIU)主要由地址加法器、寄存器组、指令队列和总线控制电路等4个部件组成,其主要功能是形成访问存储器的物理地址、访问存储器并取指令暂存到指令队列中等待执行,访问存储器或I/O端口读取操作数参加EU运算或存放运算结果等。 2.8086CPU预取指令队列有什么好处?8086CPU内部的并行操作体现在哪里? 答:8086CPU的预取指令队列由6个字节组成,按照8086CPU的设计要求,指令执行部件(EU)在执行指令时,不是直接通过访问存储器取指令,而是从指令队列中取得指令代码,并分析执行它。从速度上看,该指令队列是在CPU内部,EU从指令队列中获得指令的速度会远远超过直接从内存中读取指令。 8086CPU内部的并行操作体现在指令执行的同时,待执行的指令也同时从内存中读取,并送到指令队列。 3.8086CPU中有哪些寄存器?各有什么用途? 答:指令执行部件(EU)设有8个16位通用寄存器AX、BX、CX、DX、SP、BP、SI、DI,主要用途是保存数据和地址(包括内存地址和I/O端口地址)。其中AX、BX、CX、DX主要用于保存数据,BX可用于保存地址,DX还用于保存I/O端口地址;BP、SI、DI主要用于保存地址;SP用于保存堆栈指针。 标志寄存器FR用于存放运算结果特征和控制CPU操作。 BIU中的段寄存器包括CS、DS、ES、SS,主要用途是保存段地址,其中CS代码段寄存器中存放程序代码段起始地址的高16位,DS数据段寄存器中存放数据段起始地址的高16位,SS堆栈段寄存器中存放堆栈段起始地址的高16位,ES扩展段寄存器中存放扩展数据段起始地址的高16位。 指令指针寄存器IP始终存有相对于当前指令段起点偏移量的下一条指令,即IP总是指向下一条待执行的指令。 5.简述8086系统中物理地址的形成过程。8086系统中的物理地址最多有多少个?逻辑地址呢? 答:8086系统中的物理地址是由20根地址总线形成的。8086系统采用分段并附以地址偏移量办法形成20位的物理地址。采用分段结构的存储器中,任何一个逻辑地址都由段基址和偏移

微机原理试题集题库(带答案)

微机原理及应用习题集库 (2) 一、填空 (2) 二、单项选择题 (8) 三、程序分析题(每小题6分,共24分) (22) 四、判断题(在对的后面画√,错的后面画×): (34) 五:分析判断题(判断对错,并指出错误原因) (42) 六、简答题: (45) 七、程序题 (51) 八、接口芯片的综合编程题 (66) (一)8255A (66) (二)8259A (72) (三). 其它端口编程题 (75)

微机原理及应用习题集库 (请认真复习4、5、7、10、11章后的习题) 一、填空 1.87的原码是 0101 0111B=57H ,补码是 01010111B ,反码 01010111B 。 2.SP总是指向栈顶,若原先SP=2000H,SS=2000H,问CPU执行指令PUSH AX 后,AL内容压入物理地址为 21FFEH 存储单元中,AH内容压入物理地址为 21FFFH 存储单元中。 3.以BX基址寻址,约定的段寄存器是 DS ,以BP基址寻址,约定的段寄存 器是 SS ,变址寻址约定的段寄存器是 DS 。 4.假设某个字的值是1234H,其低位字节地址是20H,高位字节地址是21H,那么 该字地址是 20H 。 5.8086/8088的状态标志有 6(SF、PF、AF、OF、ZF、CF)个。8086/8088系统中,存储器是分段的,每段最大长度是 64K 字节,段内偏移地址从 0000H 到 FFFFH 。 6、CPU访问存储器进行读写操作时,通常在 T3状态去检测READY ,一旦检测

到READY无效,就在其后插入一个 T w周期。 7、汇编语言源程序中的语句有三种类型,它们是指令语句,伪指令 语句,宏指令语句。 8、、8086CPU寻址外设可以有两种方式,一种是直接寻址方式,另一种是间 接寻址方式。 9、CPU与外设之间的连接部件称为 I/O接口,它的基本功能是在 CPU与外设之间起缓冲作用。 10、C PU从主存取出一条指令并执行该指令的时间称(),它通常用若干个() 来表示,而后者又包括若干个()。 ①指令周期②机器周期③时钟周期 答:1-2-3 14、数据的输入/输出指的是CPU与 I/O接口进行数据交换。 15.已知X= -120,则X的原码(用八位二进制表示)是____________,补码(用八位二进制表示)是____________。 16、8088中的指令INT n用(N )指定中断类型。 17、8088的ALE引脚的作用是(地址锁存允许)。 18.一片8255A端口A有( 3 )种工作方式,端口B有( 2 )种工作方式。 19.当8255A口工作在方式1输出时,A口输入信号联络线的名称是 IBF ,

微机原理试题及答案 (1)

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

9、计算机中广泛应用的RS-232C实质上是一种(3 )。 串行接口芯片串行通信规程(协议) 串行通信接口标准系统总线标准 5--1 10、高速缓冲存储器(CACHE)一般是由( 1 )芯片组成。 SRAM DRAM ROM EPROM 11、鼠标器是一种(3 )。 手持式的作图部件手持式的光学字符识别设备 手持式的座标定位部件手持式扫描器 12、传送速度单位“bps”的含义是( 2 )。 bytes per second bits per second baud per second billion bytes per second 二、填空题:(每空1分,共12分) 1、CPU在响应中断后,自动关中。为了能实现中断嵌套,在中断服务程序中, CPU必须在保护现场后,开放中断。 2、在计算机运行的过程中,有两股信息在流动,一股是数据,另 一股则是控制命令。 3、指令MOV BX,MASK[BP]是以 ss 作为段寄存器。 4、指令REPE CMPSB停止执行时,表示找到第一个不相等的字符 或 CX=0 。 5、设CF=0,(BX)= 7E15H,(CL)= 03H,执行指令 RCL BX,CL后, (BX) = ,(CF)=,(CL)=。0F0A9H 1 3 6、在8088 CPU中,一个总线周期是 CPU从存储器或I/O端口存取一个字 节的时间。 8253定时/计数器有 3 个独立的16位计数器,每个计数器都可按二进制或 bcd 来计数。 三、程序设计(共40分) 1.(10分)假设X和X+2单元与Y和Y+2单元中分别存放的是两个双

微机原理简答题

第二章 8086体系结构与8086CPU 1.8086CPU由哪两部分构成?它们的主要功能是什么? 答:8086CPU由两部分组成:指令执行部件(EU)和总线接口部件(BIU) 指令执行部件(EU)主要由算术逻辑运算单元(ALU)、标志寄存器FR、通用寄存器组和 EU控制器等4个部件组成,其主要功能是执行指令。总线接口部件(BIU)主要由地址加法器、寄存器组、指令队列和总线控制电路等4个部件组成,其主要功能是形成访问存储器 的物理地址、访问存储器并取指令暂存到指令队列中等待执行,访问存储器或I/O端口 读取操作数参加EU运算或存放运算结果等。 2.8086CPU预取指令队列有什么好处?8086CPU内部的并行操作体现在哪里? 答:8086CPU的预取指令队列由6个字节组成,按照8086CPU的设计要求,指令执行部 件(EU)在执行指令时,不是直接通过访问存储器取指令,而是从指令队列中取得指令代码,并分析执行它。从速度上看,该指令队列是在CPU内部,EU从指令队列中获得指令 的速度会远远超过直接从内存中读取指令。 8086CPU内部的并行操作体现在指令执行的同时,待执行的指令也同时从内存中读取,并送到指令队列。 3.8086CPU中有哪些寄存器?各有什么用途? 答:指令执行部件(EU)设有8个16位通用寄存器AX、BX、CX、DX、SP、BP、SI、DI,主要用途是保存数据和地址(包括内存地址和I/O端口地址)。其中AX、BX、CX、DX主 要用于保存数据,BX可用于保存地址,DX还用于保存I/O端口地址;BP、SI、DI主要用 于保存地址;SP用于保存堆栈指针。 标志寄存器FR用于存放运算结果特征和控制CPU操作。 BIU中的段寄存器包括CS、DS、ES、SS,主要用途是保存段地址,其中CS代码段寄存器中存放程序代码段起始地址的高16位,DS数据段寄存器中存放数据段起始地址的高16位,SS堆栈段寄存器中存放堆栈段起始地址的高16位,ES扩展段寄存器中存放扩展数据 段起始地址的高16位。 指令指针寄存器IP始终存有相对于当前指令段起点偏移量的下一条指令,即IP总是指向 下一条待执行的指令。 5.简述8086系统中物理地址的形成过程。8086系统中的物理地址最多有多少个?逻辑 地址呢?

微机原理试题和答案

微机原理试题 一、单项选择题(每小题1分,共20分) 1.8086CPU由两个独立的工作单元组成,它们是执行单元EU和( ). A)总线控制逻辑器B)内部通信寄存器 C)指令寄存器D)总线接口单元 2.8086系统若用256KB*1动态存储器芯片可望构成有效存储系统的最小容量是( ). A)256KB B)512KB C)640KB D)1MB 3.Intel8255A使用了()个端口地址。 A)1 B)2 C)3 D)4 4.PC机中为使工作于一般全嵌套方式的8259A中断控制器能接受下一个中断请求,在中断服务程序结束处就( ). A)发送OCW2指令B)发送OCW3指令C)执行IRET指令D)执行POP指令5.RAM是随机存储器,它分为( )两种. A)ROM和SRAM B)DRAM和SRAM C)ROM和DRAM D)ROM和CD-ROM 6.在程序运行过程中,确定下一条指令的物理地址的计算表达式是() A)CS×16+IP B)DS×16+SI C)SS×16+SP D)ES×16+DI 7.( )是以CPU为核心,加上存储器,I/O接口和系统总线构成的. A)微处理器B)微型计算机C)微型计算机系统D)计算机 8.对于掉电,8086/8088CPU是通过( )来处理的. A)软件中断B)可屏蔽中断C)非屏蔽中断D)DMA 9.计算机的存储器采用分级存储体系的主要目的是()。 A)便于读写数据B)减小机箱的体积 C)便于系统升级D)解决存储容量、价格和存取速度之间的矛盾 10.8259A的OCW1----中断屏蔽字( )设置. A)在ICW之前B)只允许一次C)可允许多次D)仅屏蔽某中断源时11.将十六进制数163.5B转换成二进制数是)( ) A)1101010101.1111001 B)110101010.11001011 C)1110101011.1101011 D)101100011.01011011 12.Intel 8086/8088微处理器有()地址线,直接寻址内存空间的范围是()。A)10条,64KB B)20条,64KB C)16条,1M D)20条,1M 13.Intel 8086/8088微处理器的标志寄存器中,作为记录指令操作结果的标志是()。 A)CF,OF,PF,AF,SF,ZF B) CF,PF,ZF,SF C) OF,DF,IF,SF,ZF,CF D) IF,DF,OF,CF 14.下述对标志寄存器中标志位不产生影响的指令是()。 A)JMP NEXT B) TEST AL,80H C) SHL AL,1 D) INC SI 15.简单的汇编语言程序可以通过()来建立、修改和执行。 A)连接程序B) 调试程序C) 汇编程序D) 编辑程序 16.累加器AL中的内容是74H,执行CMP AL,47H指令后,累加器AL中的内容是()A)2DH B)0D3H C)00H D)74H 17.LINK程序执行后可以生成一个以()为扩展名的文件。 A).COM B).EXE C).OBJ D).LST 18.在8086/8088汇编语言源程序中,两个有符号的整数A和B比较后为了判断A是否大

微机原理与接口技术 试题与答案

微机原理与接口技术试题 微型计算机原理与接口技术综合测试题一 一、单项选择题(下面题只有一个答案是正确的,选择正确答案填入空白处) 1.8086CPU通过(1 )控制线来区分是存储器访问,还是I/O 访问,当CPU执行IN AL,DX指令时,该信号线为(2 )电平。 (1) A. M/ B. C. ALE D. N/ (2) A. 高 B. 低 C. ECL D. CMOS 2.n+1位有符号数x的补码表示范围为()。 A. -2n < x < 2n B. -2n ≤ x ≤ 2n -1 C. -2n -1 ≤ x ≤ 2n-1 D. -2n < x ≤ 2n 3.若要使寄存器AL中的高4位不变,低4位为0,所用指令为()。 A. AND AL, 0FH B. AND AL, 0FOH C. OR AL, 0FH D. OR AL 0FOH 4.下列MOV指令中,不正确的指令是()。 A. MOV AX, BX B. MOV AX, [BX] C. MOV AX, CX D. MOV AX, [CX] 5.中断指令INT 17H的中断服务程序的入口地址放在中断向量表地址()开始的4个存贮单元内。

A. 00017H B. 00068H C. 0005CH D. 0005EH 6.条件转移指令JNE的条件是()。 A. CF=0 B. CF=1 C. ZF=0 D. ZF=1 7. 在8086/8088 CPU中,一个最基本的总线读写周期由(1 )时钟周期(T状态)组成,在T1状态,CPU往总线上发( 2 )信息。 ⑴ A. 1个 B. 2个 C. 4个 D. 6个 ⑵ A. 数据 B . 地址 C. 状态 D. 其它 8. 8086有两种工作模式, 最小模式的特点是(1 ),最大模式的特点是( 2 )。 ⑴ A. CPU提供全部控制信号 B. 由编程进行模式设定 C. 不需要8286收发器 D. 需要总线控制器8288 ⑵ A. M/ 引脚可直接引用 B. 由编程进行模式设定 C. 需要总线控制器8288 D. 适用于单一处理机系统 9.在8086微机系统的RAM 存储单元器0000H:002CH开始依次存放23H,0FFH,00H,和0F0H四个字节,该向量对应的中断号是( )。 A. 0AH B. 0BH C. 0CH D. 0DH 10.真值超出机器数表示范围称为溢出,,此时标志寄存器中的( )位被置位 A. OF B AF C PF D CF

微机原理试题及答案

微机原理试题及答案 Revised as of 23 November 2020

学年第学期微机原理及应用(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”的含义是()。 b ytes per second bits per second baud per second billion bytes per second 二、填空题:(每空1分,共12分) 1、CPU在响应中断后,自动关中。为了能实现中断嵌套,在中断服务程序中,CPU必须在 后,开放中断。 2、在计算机运行的过程中,有两股信息在流动,一股是,另一股则是。 3、指令MOV BX,MASK[BP]是以作为段寄存器。 4、指令REPE CMPSB停止执行时,表示找到或。 5、设CF=0,(BX)= 7E15H,(CL)= 03H,执行指令 RCL BX,CL后, (BX)= , (CF)=,(CL)=。 6、在8088 CPU中,一个总线周期是。 7、8253定时/计数器有个独立的16位计数器,每个计数器都可按二进制或 来计数。 三、程序设计(共40分)

微机原理期末考试试题及答案

微机原理期末考试试题及答案 上海应用技术学院2008—2009学年第一学期 《微机原理及应用》期末试卷A 课程代码: B203205A学分: 3.5考试时间: 100分钟 课程序号: 1958,1960 班级:学号:姓名: 我已阅读了有关的考试规定和纪律要求~愿意在考试中遵守《考场规则》~如有违反将愿接受相应的处理。 题号一二三四五六七八九十总分应得分20 10 20 15 10 1510 100实得分 试卷共页,请先查看试卷有无缺页,然后答题。 一、填空(每空1分,共20分) 1(MCS-51的EA 管脚接低电平时,CPU只能访问外部程序存储器。 2(MCS-51单片机从外部程序存储器取指令时,使用/PSEN信号作“读”信号,从外 信号作“读”信号。部数据存储器取数据时,使用/RD 3(MCS-51的堆栈设在内部RAM 中,单片机复位后SP的内容为07 H。 4. MOV A,34H中的34H是直接寻址。 MOV A,@R0中的@R0是间接寻址。 5(若PSW=98H,则选择了第3组工作寄存器,此时R7的地址是1F H。 6(MCS-51的数据总线共8位,来自P0口,地址总线共16位,来自P2和P0口。

7(8255A具有( 3 )个8位可编程I/O口。8(若串口工作于方式1,每分钟传送3000个字符,其波特率是( 500 )bit/s。 9(一个8位A/D转换器的分辨率是( 3.9 )‰。 10(若0809 U=5V,输入模拟信号电压为2.5V时,A/D转换后的数字量是( 80H )。REF 11(一个EPROM的地址有A0----A11引脚,它的容量为( 4 )KB。 12(已知1只共阴极LED显示器,其中a笔段为字形代码的最低位,若需显示数字1, 它的字形代码应为( 06H )。 第1页 二、判断题,对者划“?”,错者划“×”。(每小题1分,共10分)1((?)8051单片机的算术运算类指令执行的一般会影响标志位。2((?)8051单片机的外部数据存储器和内部数据存储器的要用不同的指令来访问。3((×)AJMP指令转移范围是-128,127之间。 4((?)DPTR可以分成高8位和低8位分别寻址。 5((×)MCS51内部定时/计数器在溢出时,都必须由软件重装初值才能按原设定值定时 /计数。 6((×)MCS-51系列单片机4个I/O端口都是多功能的。 7((?)MCS-51特殊功能寄存器的字节地址能被8整除者,可以位寻址。8.(×)并行扩展简单I/O口,对芯片的要求是:输入要锁存,输出要缓冲。((?)串行通信要求是互相通信的甲乙双方具有相同的波特率。9 10((?)8255A的PA口具有3种工作方式。

微机原理简答题

1.8086 CPU有多少根地址线?多少根数据线?它最大直接寻址范围是多少?一次对外数据传送多少BIT二进制数?(20根地址线、16根数据线、最大直接寻址范围是1MB、一次对外数据传送16BIT二进制数) 2、什么是总线周期一个基本的总线周期由多少个T构成 答:CPU每访问一次总线所花的时间称为总线周期,一个基本的总线周期由四个T周期构成7.什么是中断?什么是中断向量?什么是中断向量表?INT24在中断向量表的什么位置?一个完整的中断过程有哪几个步骤? 答:中断是指CPU在正常运行时,由于内部、外部事件或由程序的预先安排引起的CPU中断正在运行的程序,转而到内部、外部事件预先安排的服务程序(中断子程序)中去执行。 中断向量是中断处理子程序的入口地址,每个中断类型对应一个中断向量。中断向量表是中断类型码和与此类型码相应的中断服务程序之间的一个连接链。每一个中断服务程序入口地址的IP和CS成为一个中断指示字或中断向量。 24*4=96=60H INT24在中断向量表的0000:0060H~0000:0063H处。 一个完整的中断过程包括中断请求、中断排队、中断响应、中断处理和中断返回五个步骤。 8、(p303_4)CPU响应中断的条件是什么?简述中断处理过程。 答:CPU响应中断要有三个条件:外设提出中断申请;本中断位未被屏蔽;中断允许。 可屏蔽中断处理的过程一般分成几步:中断请求;中断响应;保护现场;转入执行中断服务子程序;恢复现场和中断返 回。 CPU在响应外部中断,并转入相应中断服务子程序的过程中,要依次做以下工作: ⑴从数据总线上读取中断类型号,将其存入内部暂存器。 ⑵将标志寄存器PSW的值入钱。 ⑶将PSW中的中断允许标志IF和单步标志TF清0,以屏蔽外部其它中断请求,避免CPU 以单步方式执行中断处理子程 字。 ⑷保护断点,将当前指令下面一条指令的段地址CS和指令指针IP的值入栈,中断处理完毕后,能正确返回到主程序继 续执行。 ⑸根据中断类型号到中断向量表中找到中断向量,转入相应中断服务子程序。 ⑹中断处理程序结束以后,从堆栈中依次弹出IP、CS和PSW,然后返回主程序断点处,继续执行原来的程序。 7、说明8086系统中“最小模式”和“最大模式”两种工作方式的主要区别是什么? 最小模式为单机系统,系统中所需要的控制信号由CPU提供,实现和存储器及I/O接口电路的连接。 最大模式可以构成多处理器/协处理器系统,即一个系统中存在两个以上微处理器,每个处理器执行自己的程序。系 统中所需要的控制信号由总线控制器8288提供,8086CPU提供信号控制8288,以实现全局资源分配及总线控制权传递。 在两种模式中,CPU的24~31引脚意义不同。 最小模式中引脚MN/MX接+5V,最大模式中该引脚接地 、用1024×1位的RAM芯片组成6K×8位的存储器需要多少芯片?在地址线中有多少位参

微机原理试题集题库(带答案)

微机原理试题集题库(带答案)

微机原理及应用习题集库 (2) 一、填空 (2) 二、单项选择题 (6) 三、程序分析题(每小题6分,共 24分) (16) 四、判断题(在对的后面画√,错的后面 画×): (25) 五:分析判断题(判断对错,并指出错误 原因) (31) 六、简答题: (33) 七、程序题 (38) 八、接口芯片的综合编程题 (50) (一)8255A (50) (二)8259A (56) (三). 其它端口编程题 (58) 2

微机原理及应用习题集库 (请认真复习4、5、7、10、11章后的习题) 一、填空 1.87的原码是0101 0111B=57H , 补码是01010111B ,反码 01010111B 。 2.SP总是指向栈顶,若原先 SP=2000H,SS=2000H,问CPU执行指 令PUSH AX后,AL内容压入物理地址 为21FFEH 存储单元中,AH内 容压入物理地址为21FFFH 存储 单元中。 3.以BX基址寻址,约定的段寄存器是 DS ,以BP基址寻址,约定的段寄存 器是SS ,变址寻址约定的段寄存器 是DS 。 3

4.假设某个字的值是1234H,其低位字节地 址是20H,高位字节地址是21H,那么该 字地址是20H 。 5.8086/8088的状态标志有6(SF、PF、 AF、OF、ZF、CF)个。 8086/8088系统中,存储器是分段的,每段最大长度是64K 字节,段内偏移地址从0000H 到FFFFH 。 6、CPU访问存储器进行读写操作时,通常在 T3状态去检测READY ,一旦检测到READY无效,就在其后插入一个T w周期。 7、汇编语言源程序中的语句有三种类型,它 们是指令语句,伪指令语句,宏指令语句。 8、、8086CPU寻址外设可以有两种方式,一 4

相关文档
相关文档 最新文档