微机原理与接口技术试题五答案
一、选择题(单项选择,每小题2分,共20分)
1、在计算机内部,一切信息的存取、处理和传送都是以( D )形式进行的。
A.EBCDIC码 B.ASCII码 C.十六进制编码 D.二进制编码
2、与十进制数56等值的二进制数是 ( A )。
A.111000 B.111001 C.101111 D.110110
3、十进制数59转换成八进制数是( A )。
A.73Q B.37Q C.59Q D.112Q
4、与十进制数58.75等值的十六进制数是( B ) 。
A.A3.CH B.3A.CH C.3A.23H D.C.3AH
5、二进制数1101.01转换成十进制数是( C )。
A.17.256 B.13.5 C.13.25 D.17.5
6、二进制数111010.11转换成十六进制数是( B )。
A.3ACH B.3A.CH C.3A3H D.3A.3H
7、十六进制数1CB.D8转换成二进制数是( D )。
A.110001011.11001 B.111101011.11101
C.111101011.11101 D.111001011.11011
8、将十六进制数FF.1转换成十进制数是 ( C ) 。
A.255.625 B.2501625 C.255.0625 D.250.0625
9、十进制正数43的八位二进制原码 ( B ) 。
A.00110101 B.00101011 C.10110101 D.10101011
10、十进制正数38的八位二进制补码是 ( D )。
A.00011001 B.10100110 C.10011001 D.00100110
二、填空题(每小题2分,共10分)
1、对于R进制数来说,其基数 能使用的数字符号个数 是 R 个,能使用的最小数字符号是 0 。
2、十进制数72转换成八进制数是 110Q 。
3、与十进制数67等值的十六进制数是 43H 。
4、二进制数101.011转换成十进制数是 5.375 。
5、十六进制数0E12转换成二进制数是 110000010010B 。
三、简答题(每小题6分,共30分)
1. 微处理器,微型计算机和微型计算机系统三者之间有何区别?
答:微处理器即CPU,它包括运算器、控制器、寄存器阵列和内部总线等部分,用于实现微型计算机的
运算和控制功能,是微型计算机的核心;一台微型计算机由微处理器、内存储器、I/O接口电路以及总
线构成;微型计算机系统则包括硬件系统和软件系统两大部分,其中硬件系统又包括微型计算机和外围
设备;由此可见,微处理器是微型计算机的重要组成部分,而微型计算机系统又主要由微型计算机作为
其硬件构成。
2. CPU在内部结构上由哪几部分构成?CPU应具备哪些主要功能?
答:CPU在内部结构上由运算器、控制器、寄存器阵列和内部总线等各部分构成,其主要功能是完成各
种算数及逻辑运算,并实现对整个微型计算机控制,为此,其内部又必须具备传递和暂存数据的功能。
3. 微型计算机的总线有哪几类?总线结构的特点是什么?
答:微型计算机的总线包括地址总线、数据总线和控制总线三类,总线结构的特点是结构简单、可靠性
高、易于设计生产和维护,更主要的是便于扩充。
4. 存储单元的选择由什么信号控制?读、写靠什么信号区分?
答:存储单元的选择由地址信号控制,而对存储单元进行读操作还是写操作则要靠读、写信号区分。
5. 以一个可执行文件的运行为例,简述程序执行过程。
答:当在DOS提示符下键入一个可执行文件名称(或在其它操作系统环境下执行有关操作)后,操作系统
自动将该文件从外存装入内存并使指令指针指向其第一条指令,从而启动文件执行过程。首先将第一条
指令从内存取入CPU中译码执行,同时指令指针自动加1或按指令的要求作出相应改变,指向下一条要执
行的指令,接着将下一条指令从内存取入CPU译码执行,这样不断重复取指令和执行指令的过程,逐条
执行指令,直至程序结束。
四、分析计算题(第1小题7分,第2小题10分,第3小题10分,第4小题13分)
1.用10进制数写出下列补码表示的机器数的真值:71H,1BH,80H,F8H,397DH,CF42H,9350H
答:上述补码表示的各机器数的真值用10进制数分别表示为: +113,+27,-128,-8,+14717,-20670,-
27828
2.把下列各数化成二进制数和八进制数: 7+3/4,±3/64,73.5, 725.9375,25.34
答:7+3/4=(111.110)B=(7.6)O;
±3/64=±(0.000)B=±(0.0)O;
73.5=(1001001.100)B=(111.4)O;
725.9375=(1011010101.111)B=(1325.7)O;
25.34=(11001.011)B=(31.3)O
3.按下面的要求写出程序的框架
(1)数据段的位置从0E000H开始,数据段中定义一个100字节的数组,其类型属性既是字又是字节;
(2)堆栈段从小段开始,段组名(类别名)为STACK;
(3)代码段中指定段寄存器,指定主程序从1000H开始,给有关段寄存器赋值;
(4)程序结束。
答:所求程序框架为:
Data SEGMENT AT 0E000H
Arr_w LABEL WORD
Arr_b DB 100 DUP(?)
Data ENDS
Sta_seg SEGMENT PARA ‘STACK’
DB 80 DUP(?)
Top LABEL WORD
Sta_seg ENDS
Code SEGMENT
ASSUME CS:Code,DS:data,SS:sta_seg
ORG 1000H
Start: MOV AX, data
MOV DS, AX
MOV AX,Sta_seg
MOV SS, AX
MOV SP, OFFSET Top
……
MOV AH, 4CH
INT 21H
Code ENDS
END Start
4.假设在数据段X_SEG、附加段Y_SEG和堆栈段Z_SEG中分别定义了字变量X、Y和Z,试编制一完整的程序
计算 X+Y+Z,并将结果送X。
答:所求程序为:
X_SEG SEGMENT
X DW 12eH
X_SEG ENDS
Y_SEG SEGMENT
Y DW 4d2H
Y_SEG ENDS
Z_SEG SEGMENT STACK ‘STACK’
Z DW 2CAH
Z_SEG ENDS
Code SEGMENT
ASSUME CS:Code,DS:X_SEG,ES:Y_SEG,SS:Z_SEG
Start: MOV AX, X_SEG
MOV DS, AX
MOV AX, Y_SEG
MOV ES, AX
MOV AX,ES:Y
ADD X, AX
MOV BP, 0
MOV AX, [BP+Z]
ADD X, AX
MOV AH, 4CH
INT 21H
Code ENDS
END Start
|