当前位置:文档之家› 微机原理习题4参考答案

微机原理习题4参考答案

微机原理习题4参考答案
微机原理习题4参考答案

习题4参考答案

4.1 简述汇编语言与机器语言及高级语言间的区别?

参考答案:

要点:汇编语言与机器语言的区别:汇编语言采用符号表示,机器语言二进制表示。

汇编语言与高级语言的区别:汇编语言属于低级语言,每条指令与对应的机器指令间是一一对应关系,而高级语言接近于自然语言。

4.2 简述汇编语言程序的指令语句与伪指令语句在写法及功能上的不同?

参考答案:

要点:写法上的不同主要表现在第一部分上,一条指令的第一部分“标号”若需要,则在标号后面一定有冒号“:”,而伪指令语句的第一部分在“名字”后没有冒号“:”。

功能上的不同:每一条指令都有对应的机器指令,在程序运行过程中执行到每条指令时起作用;伪指令没有对应的机器指令,是在程序汇编时起作用。

4.3 汇编语言程序的标号有何规定?标号有哪三种属性?

参考答案:略

4.4 汇编语言程序的变量如何定义?变量有哪三种属性?

参考答案:略

4.5 汇编语言程序中,算术表达式、逻辑表达式、关系表达式各有什么含义?

参考答案:略

4.6 简述汇编语言程序上机的基本步骤和每步所进行的主要操作?

参考答案:略

4.7 设TABLE为数据段中0100H单元的符号名,其中存放的内容为FF00H,试分析以下两条指令分别执行后的结果,并指出它们之间的区别?

MOV AX,TABLE

MOV AX,OFFSET TABLE

参考答案:第一条指令传送的是TABLE所指单元的内容,AX结果为FF00H;第二条指令传送的是TABLE的偏移地址,AX结果为0100H。

4.8 设有如下的变量定义:

DATA SEGMENT

ARRAY DW 1000H,2000H,3000H,4000H,5000H

BUF DW ?

DATA ENDS

请分别完成以下操作

(1)用一条指令完成将ARRAY的偏移地址送BX

(2)用一条指令完成将ARRAY的第一字节单元内容送AL

(3)用一条指令完成将ARRAY定义的数据个数送CX

参考答案:

(1)LEA BX,ARRAY

(2)MOV AL,BYTE PTR ARRAY

·1·

(3)MOV CX,(BUF- ARRAY)/2

4.9 已知一数据段中的数据定义如下:

DATA SEGMENT

STR1 DB 1,2,3,4,5

STR2 DB ‘12345’

CONT EQU 20

NUMB DB 3 DUP(6)

NUMW DW 20H,-80H

TABLE DW 0

DATA ENDS

试根据以上数据段的定义,指出下列每小题指令中的错误或者用得不当的指令。

(1)MOV AX,STR1 ;STR1定义为字节类型,不能当字变量使用

(2)MOV BX,OFFSET NUMB

MOV [BX],’+’;’+’为立即数,[BX]存储器操作数应明确类型(3)MOV DL,NUMW+2 ;NUMW为字类型,不能当字节变量使用

(4)MOV BX,OFFSET STR1

MOV DH,BX+3 ;源操作数“BX+3”不是正确表达式(5)INC CONT ;INC中的操作数不能为立即数

(6)MOV STR1,STR2 ;MOV中的两个操作数不能同时为存储器操作数(7)MOV AX,NUMW+2

MOV DX,0 ;此处不应用MOV指令,而应该用CWD指令

DIV NUMW ;此处不应用DIV指令,而应该用IDIV指令参考答案:分号“;”后面为答案

4.10 编写一个汇编语言程序,将字符串“Hello Wowld!”中的全部小写字母转换为大写字母,并存放回原地址处。

参考程序:

DATA SEGMENT

STRING DB "Hello Wowld!"

LEN equ $-string

DATA ENDS

code segment

assume cs:code,ds:data

start:

mov ax,data

mov ds,ax

mov bx,offset string

mov cl,len

next:mov al,[bx]

cmp al,'a'

jb lop

cmp al,'z'

·2·

mov [bx],al

lop: inc bx

dec cl

jnz next

mov ah,4ch

int 21h

code ends

end start

4.11 编写一个带符号数四则运算的程序,完成(Z-(X*Y+200))/20的运算,商送V单元,余数送W单元。这里,X,Y,Z均为16位的带符号数,内容用户自己定义。

参考程序:

DATA SEGMENT

x DW 2

y dw -10

z dw 300

v dw ?

w dw ?

DATA ENDS

code segment

assume cs:code,ds:data

start:

mov ax,data

mov ds,ax

mov ax,x

mov bx,y

imul bx

mov cx,200

mov bx,0

add ax,cx

adc dx,bx

mov cx,z

mov bx,0

sub cx,ax

sbb bx,dx

xchg cx,ax

xchg bx,dx

mov bx,20

idiv bx

mov v,ax

·3·

int 21h

code ends

end start

4.12 编写一个汇编语言程序,完成以下要求。从BUF单元处定义有10个带符号字数据:-1、3、24、94、62、72、55、0、-48、99,试找出它们中的最大值和平均值,并依次分别存放至该数据区的后2个单元中(假设这10个数的和值不超过16位)。

参考程序:

DATA SEGMENT

buf DW -1,3,24,94,62,72,55,0,-48,99

n equ ($-buf)/2

max dw ?

ave db ?,?

DATA ENDS

code segment

assume cs:code,ds:data

start:

mov ax,data

mov ds,ax

lea si,buf

clc

xor ax,ax

xor dx,dx

mov ax,[si]

mov cx,n

next:adc dx,[si]

cmp ax,[si]

jge goon

mov ax,[si]

goon:add si,2

loop next

mov max,ax

mov bl,n

mov ax,dx

idiv bl

mov ave,al

mov ave+1,ah

mov ah,4ch

int 21h

code ends

·4·

end start

4.13 编写一个统计分数段的子程序,要求将100分、90~99分、80~89分、70~79分、60~69分、60分以下的学生人数统计出来,并分别送往S10、S9、S8、S7、S6、S5各单元中。(学生人数和每人的成绩由用户自己定义)

参考程序:

DATA SEGMENT

grad db 77,68,82,90,54,69,72,86,91,100

s10 db ?

s9 db ?

s8 db ?

s7 db ?

s6 db ?

s5 db ?

DATA ENDS

code segment

assume cs:code,ds:data

start:

mov ax,data

mov ds,ax

mov cx,s10-grad

call count

mov ah,4ch

int 21h

count proc near

mov si,0

next:mov al,grad[si]

mov ah,0

mov bx,10

div bl

cbw

mov bx,ax

sub bx,10

neg bx

inc s10[bx]

inc si

loop next

ret

count endp

code ends

end start

4.14 将AX寄存器中的16位数据分成4组(从高到低),每组4位,然后把这四组数作为数当中

·5·

的低4位分别放在AL、BL、CL和DL中。

参考程序:

code segment

assume cs:code

start:

MOV BX,AX

MOV DX,AX

MOV CL,4

SHR AH,CL

MOV AL,AH

MOV BL,BH

AND BL,0FH

MOV DH,DL

SHR DH,CL

MOV CL,DH

mov ah,4ch

int 21h

code ends

end start

4.15设有两个16位整数变量A和B,试编写完成下述操作的程序:

(1)若两个数中有一个是奇数,则将奇数存入A中,偶数存入B中。

(2)若两个数均为奇数,则两数分别减1,并存回原变量中。

(3)若两个数均为偶数,则两变量不变。

参考程序:

DATA SEGMENT

a dw ?

b dw ?

DATA ENDS

code segment

assume cs:code,ds:data

start:

mov ax,data

mov ds,ax

lop: mov ax,a

mov bx,b

xor ax,bx

test ax,0001H

jz next

test bx,0001H

jz exit

xchg bx,a

·6·

mov b,bx

jmp exit

next:test bx,0001h

jz exit

dec b

dec a

exit:mov ah,4ch

int 21h

code ends

end start

4.16 设有一段英文,其字符变量名为ENG,并以$字符结束。试编写一程序,查找单词“is”在该文中的出现次数,并将次数显示出来。(英文内容由用户自己定义)

参考程序:

DATA SEGMENT

ENG db 'this is an program example$'

n1 equ $-eng

str db 'is'

n2 equ $-str

DATA ENDS

code segment

assume cs:code,ds:data,es:data

start:

mov ax,data

mov ds,ax

mov es,ax

xor dx,dx

mov cl,n1

xor ch,ch

cmp cx,n2

jbe disp

mov al,str

lea di,eng

cld

search:

repne scasb

jne disp

mov bl,str+1

cmp es:[di],bl

je exist

jcxz disp

lop: jmp search

·7·

exist:inc dl

cmp cx,1

jz disp

jmp lop

disp: or dl,30h

mov ah,2

int 21h

mov ah,4ch

int 21h

code ends

end start

4.17 请编写程序实现以下功能:设在A、B和C单元中分别存放着一个8位带符号数。试比较这3个数,若3个数都不是0,则求出3数之和并存放于D单元中;若其中有一个数为0,则把其它两个单元也清零。

参考程序:

DATA SEGMENT

a D

b 10

b db -10

c db 30

d db ?

DATA ENDS

code segment

assume cs:code,ds:data

start:

mov ax,data

mov ds,ax

xor dx,dx

cmp a,0

jz next

mov dl,a

cmp b,0

jnz lop1

next:mov b,0

mov c,0

mov a,0

jmp exit

lop1:add dl,b

cmp c,0

jz next

add dl,c

mov d,dl

·8·

code ends

end start

4.18 从键盘输入一系列字符(以回车符结束),并按字母、数字及其它字符分类计数,最后显示出这三类的计数结果。

参考程序:

data segment

s db ? ;统计字符

d db ? ;统计数字

o db ? ;统计其它字符

code segment

assume cs:code,ds:data

start:

mov ax,data

mov ds,ax

lop: mov ah,1

int 21h

cmp al,0dh

jz disp

cmp al,30h

jb other

cmp al,39h

jbe shu

cmp al,41h

jb other

cmp al,5ah

jbe str

cmp al,61h

jb other

cmp al,7ah

jbe str

jmp lop

other:inc o

jmp lop

shu: inc d

jmp lop

str: inc s

jmp lop

disp:

mov dl,0ah

·9·

mov dl,0dh

mov ah,2

int 21h

mov dl,s

or dl,30h

mov ah,2

int 21h

mov dl,d

or dl,30h

int 21h

mov dl,o

or dl,30h

int 21h

mov ah,4ch

int 21h

code ends

end start

·10·

微机原理习题集以及答案

第一部分 例题与习题 第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 一、选择题(20分,在每小题的4个备选答案中选出一个正确的答案编号填写在该题空白处,每题2分) 1.指令MOV DX,[BX]的寻址方式是 D 。 (A)立即寻址(B)直接寻址(C)寄存器寻址(D)寄存器间接寻址2.若AL的内容为3FH,执行SHL AL,1指令后,AL的内容为 A 。 (A)7EH (B)1FH (C)9FH (D)7FH 解析:shl al ,1 即目的操作数各位左移一次,移动一次,相当于将目的操作数乘以2。3fh=63 63*2=126 126=7eh 故选A 3.属于在工作中需定时刷新的存储器的芯片是 B 。 (A)SRAM (B)DRAM (C)EEPROM (D)EPROM 4.某EPROM芯片上有19条地址线A 0~A 18 ,它的容量为 C 。 (A)128K (B)256K (C)512K (D)1024K 5.8086/8088CPU的SP寄存器是多少位的寄存器 B 。 (A)8位(B)16位(C)24位(D)32位 6.在STOSB指令执行的时候,隐含着寄存器的内容作为操作数的偏移地址, 该寄存器是 D 。 (A)SP (B)BX (C)SI (D)DI 解析:stos数据串存储指令功能:将累加器al或ah中的一个字或字节,传送到附加段中以di为目标指针的目的串中,同时修改di,以指向串中的下一个单元。 7.8255工作在方式0时,下面哪种说法不正确 C 。 (A)A口输入无锁存能力(B)A、B口输出有锁存能力 (C)C口输入有锁存能力(D)A、B、C三个口输出均有锁存能力 解析:对于方式0,规定输出信号可以被锁存,输入不能锁存 8.采用DMA方式来实现输入输出是因为它 A 。 (A)速度最快(B)CPU可不参与操作(C)实现起来比较容易(D)能对突发事件做出实时响应 9.工作在最小模式下,8086/8088CPU芯片中,将地址信号锁存的信号是 C 。 (A)DT/R (B)DEN (C)ALE (D)AEN 10.在LOOP指令执行的时候,隐含着对计数器减1的操作,该计数器是用寄存 器 C 。 (A)AX (B)BX (C)CX (D)DX 解析:loop:循环指令。指令执行前必须事先见重复次数放在cx寄存器中,每执行一次loop指令,cx自动减1。 二、填空题(每小题2分,共10分) 1.两个无符号数相等,该两数相减后ZF标志= 1 。解析:zf: 全零标志位。本次运算结果为0时,zf=1,否则zf=0。 2.执行LODSB后,SI的内容较该指令执行前增加1,说明DF= 0 。

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

第四章 1.在下列程序运行后,给相应的寄存器及存储单元填入运行的结果: 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

微机原理试题及答案

微机原理试题及答案 微机原理试题及答案 一、填空题(每空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单片机中,

微机原理习题及答案

一、选择 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. 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, V1D. MOV2000H, V2 9. –49D 的二进制补码为A。

微机原理习题解答

第一章微型计算机的基础知识 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=

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

微机原理》复习题解答 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信号有什么作用?

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

范文范例学习指导 第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)

微机原理试题及答案 (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单元中分别存放的是两个双

《微机原理》习题参考答案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

微机原理试题和答案

微机原理试题 一、单项选择题(每小题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 第一部分 例题与习题 第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

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

微机原理与接口技术试题 微型计算机原理与接口技术综合测试题一 一、单项选择题(下面题只有一个答案是正确的,选择正确答案填入空白处) 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

微机原理试题及答案

卷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”的含义是()。

微机原理试题及答案

微机原理试题及答案 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分)

微机原理习题册答案整理

1.2 课后练习题 一、填空题 1.将二进制数1011011.1转换为十六进制数为__5B.8H_____。2.将十进制数199转换为二进制数为____ 11000111____B。3.BCD码表示的数,加减时逢__10____进一,ASCII码用来表示数值时,是一种非压缩的BCD码。 4.十进制数36.875转换成二进制是___100100.111____________。 5.以_微型计算机____为主体,配上系统软件和外设之后,就构成了__微型计算机系统____。 6.十进制数98.45转换成二进制为__1100010.0111_B、八进制__142.3463________Q、十六进制__62.7333________H。(精确到小数点后4位) 二、选择题 1.堆栈的工作方式是__B_________。 A)先进先出B)后进先出C)随机读写D)只能读出不能写入 2.八位定点补码整数的范围是____D_________。 A)-128-+128 B)-127-+127 C)-127-+128 D)-128-+127 3.字长为16位的数可表示有符号数的范围是___B___。 A)-32767-+32768 B)-32768-+32767 C)0-65535 D)-32768-+32768 三、简答题 1.微型计算机系统的基本组成? 微型计算机,系统软件,应用软件,输入输出设备 2.简述冯.诺依曼型计算机基本思想? 将计算过程描述为由许多条指令按一定顺序组成的程序,并放入存储器保存 指令按其在存储器中存放的顺序执行; 由控制器控制整个程序和数据的存取以及程序的执行; 以运算器为核心,所有的执行都经过运算器。 3.什么是微型计算机? 微型计算机由CPU、存储器、输入/输出接口电路和系统总线构成。 4.什么是溢出? 运算结果超出了计算机所能表示的范围。 2.2 一、填空题 1. 8086/8088的基本总线周期由___4____个时钟周期组成,若CPU主频为10MHz,则一个时钟周期的时间为___0。1μs_____。 2. 在8086CPU的时序中,为满足慢速外围芯片的需要,CPU 采样___READY_________信号,若未准备好,插入___TW__________时钟周期。 3. 8086系统总线形成时,须要用_____ALE__________信号锁定地址信号。 4. 对于8086微处理器,可屏蔽中断请求输入信号加在_____INTR__________引脚。 5. 在8086系统中,若某一存贮单元的逻辑地址为7FFFH:5020H,则其物理地址为_____85010H__________。 6. 8086的输入信号Ready 为低电平的作用是说明___存储器或I/O接口未准备好____________。 7. 8088 CPU的NMI 引脚提出的中断请求称为:___非屏蔽中断____________。 8. CPU从主存取出一条指令并执行该指令的时间称为___指令周期____________。 9. 在8086系统中,从奇地址读写两个字时,需要___ 4______个总线周期。 二、简答题 1. 在内部结构上,微处理器主要有那些功能部件组成? 1) 算术逻辑部件2) 累加器和通用寄存器组 3) 程序计数器4) 时序和控制部件(意思相近 2. 微处理器一般应具有那些基本功能? 本身具有运算能力和控制功能3. 什么是总线周期? CPU使用总线完成一次存储器或I/O接口的存取所用的时间, 称为总线周期,一个基本的总线周期包含4个T状态,分别 称为T1、T2、T3、T4。(意思相近即可) 三、判断题 6.8086的每个存储单元地址既是字节地址又是字地址。 ( √) 7. 同一个物理地址可以由不同的段地址和偏移量组合得到。 ( √) 3.2 课后练习题 一、简答题 1. 若(AX)=9C5AH,(BX)=9754H,执行下列指令序列后,程 序转向何处执行。 ADD AX,BX JNC L3 JNO L1JNO L4 JNC L2JMP L5 SUB AX,BX L3 2. 中断服务程序结束时,用RET指令代替IRET指令能否返 回主程序?这样做存在什么问题? RET应该可以使中断服务程序返回主程序,但因为RETF是 子程序返回指令,它只从堆栈中恢复CS和IP,而不能使状态 字PSW得以恢复,所以不能使断点完全恢复,对源程序的继 续执行造成不良影响。(回答可以返回2分,出现的问题3分, 意思相近即可) 3. 写出把首地址为BLOCK字数组中的第6个字,送到DX 寄存的指令(或指令组),要求使用以下几种寻址方式: (1) 寄存间接寻址 (2) 寄存相对寻址 (3) 基址变址寻址 1) MOV BX,OFFSET BLOCK+6 2) LEA BX,BLOCK 3) LEA BX,BLOCK MOV DX,[BX] MOV DX,[BX+12] MOV SI,12 MOV DX,[BX+SI] 4. 设BX=134AH,BP=1580H,DI=0528H,SI=0234H, DS=3200H,SS=5100H,求在各种寻址方式下源操作数的物 理地址。 1) MOV AX, [2400H] 34400H 2) MOV AX, [BX] 33580H 3) MOV AX, [SI] 32234H 4) MOV AX, [BX+2400H] 3574AH 5) MOV AX, [BP+2400H] 54980H 6) MOV AX, [BX+DI] 33872H 7) MOV AX, [BP+SI+2400H] 54BB4H 二、阅读下面的程序段,写出运行结果 1. CLC MOV AX,248BH MOV CL,3 RCL AX,CL 执行以上程序序列后,AX=_2458H__。 2. MOV BX,6D16H MOV CL,7 SHR BX,CL 执行后BX寄存器中的内容__00DAH___。 3. MOV DX,01H MOV AX,42H MOV CL,4 SHL DX,CL MOV BL,AH SHL AX,CL SHR BL,CL OR DL,BL 执行后 (DX)=_0010H___,(AX)=__0420H__________ 4. mov ax,693ah mov al,ah not al add al,ah inc al 程序段执行后,AL=_0000H__ 、ZF= ___1___________。 5. 根据程序填空(程序段顺序执行) MOV CL, 58H ;CL= 58 MOV AL, 79H ;AL= 79 ADD AL, CL ;AL= D1 H, AF= 1 , CF= DAA ;AL= 37H , AF= 0 , CF= 1 三、判断题 2. 执行下列指令可以将其00H送到端口地址为2F8H的外设 上:( √) MOV AL,00H MOV DX,2F8H OUT DX,AL 3. 8088的MOV指令不能进行两个存储器单元之间的数据直 接传送。( √) 6. 判断下列指令是否正确 JMP BX对 in al,dx对 mov ds,ax对 mov al,【bx+10h】对 push ss对 mov cs,ax对 4.2 课后练习题 一、填空题 1. 定义段结束的伪指令是____ ENDS _______;定义子程序结 束的伪指令是___ ENDP _____。 2.伪指令X DB 4 DUP (6,2 DUP(6,8));Y DW 6800H; 设X的偏移地址为2000H,则Y的偏移地址为 _2014H________H,若执行指令MOV BL,BYTE PTR Y后, 则(BL)=___ 00_____。 3.伪指令VR1 DB 2 DUP(?,3 DUP(1,2),5)在存贮器中被分配 了_______16个________字节。 二、选择题 1.下面表示段定义结束的伪指令是______C____。 A)END B)ENDP C)ENDS D)ENDM 2.变量的类型属性如下,下面错误的类型是___B_______。 A)字节型B)字符型C)字型D)双字 型 3.设有一程序定义如下: ORG 0024H AR1 DW 4,5,$+4 … MOV AX,AR1+4 执行以上指令后,AX中的内容正确的是____D___________。 A)0028H B)0032H C)002AH D) 002CH 4.现用数据定义伪指令定义数据:BUF DB 4 DUP(0,2 DUP (1,0));问定义后,存储单元中有数据0100H的字单元个 数是_C___________。 A)4 B)3 C)8 D)12 5.下列伪指令中定义字节变量的是___A_____。 A)DB B)DW C)DD D)DT 6.使用DOS功能调用时,子功能号应放在( B )寄存器中。 A)AL B)AH C)DL D)DH 三、程序设计 1、、设正数个数存放于BX中,负数个数存放于DI中,零的 个数存放于DX中 MOV AX,0100H JZ ZERO MOV DS,AX JL NEGAT MOV BX,0 INC BX MOV DX,0 JMP NEXT1

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