微机原理作业解答

合集下载

(完整版)微机原理课后习题参考答案

(完整版)微机原理课后习题参考答案

第一章2、完成下列数制之间的转换。

(1)01011100B=92D (3)135D=10000111B (5)10110010B=262Q=B2H3、组合型BCD码和非组合型BCD码有什么区别?写出十进制数254的组合型BCD数和非组合型数。

答:组合型BCD码用高四位和低四位分别对应十进制数的个位和十位,其表示范围是0~99;非组合型BCD码用一个字节的低四位表示十进制数,高四位则任意取值,表示范围为0~9。

组合型:254=(001001010100)BCD非组合型:254=(00000010 00000101 00000100)BCD7、计算机为什么采用补码形式存储数据?当计算机的字长n=16,补码的数据表示范围是多少?答:在补码运算过程中,符号位参加运算,简化了加减法规则,且能使减法运算转化为加法运算,可以简化机器的运算器电路。

+32767~ -32768。

9、设计算机字长n=8,求下列各式的[X+Y]补和[X-Y]补,并验证计算结果是否正确。

(1)X=18,Y=89 [X+Y]补=00010010+01011001=01101011B=107D 正确[X-Y]补=10111001B=00010010+10100111=(-71D)补正确(2)X=-23,Y=-11 [X+Y]补=11101001+11110101=11011110B=(-34D)补正确[X-Y]补=11101001+00001011=11110100B=(-12D)补正确(3)X=18,Y=-15 [X+Y]补=00010010+11110001=00000011B=(3D)补正确[X-Y]补=00010010+00001111=00100001B=(33D)补正确(4)X=-18,Y=120 [X+Y]补=11101110+01111000=01100110B=(102D)补正确[X-Y]补=11101110+10001000=01110110B=(123D)补由于X-Y=-138 超出了机器数范围,因此出错了。

(完整版)微机原理答案

(完整版)微机原理答案

微机原理答案习题11.什么是汇编语言,汇编程序,和机器语言?答:机器语言是用二进制代码表示的计算机能直接识别和执行的一种机器指令的集合。

汇编语言是面向及其的程序设计语言。

在汇编语言中,用助记符代替操作码,用地址符号或标号代替地址码。

这种用符号代替机器语言的二进制码,就把机器语言编程了汇编语言。

使用汇编语言编写的程序,机器不能直接识别,要由一种程序将汇编语言翻译成机器语言,这种起翻译作用的程序叫汇编程序。

2.微型计算机系统有哪些特点?具有这些特点的根本原因是什么?答:微型计算机的特点:功能强,可靠性高,价格低廉,适应性强、系统设计灵活,周期短、见效快,体积小、重量轻、耗电省,维护方便。

这些特点是由于微型计算机广泛采用了集成度相当高的器件和部件,建立在微细加工工艺基础之上。

3.微型计算机系统由哪些功能部件组成?试说明“存储程序控制”的概念。

答:微型计算机系统的硬件主要由运算器、控制器、存储器、输入设备和输出设备组成。

“存储程序控制”的概念可简要地概括为以下几点:①计算机(指硬件)应由运算器、存储器、控制器和输入/输出设备五大基本部件组成。

②在计算机内部采用二进制来表示程序和数据。

③将编好的程序和原始数据事先存入存储器中,然后再启动计算机工作,使计算机在不需要人工干预的情况下,自动、高速的从存储器中取出指令加以执行,这就是存储程序的基本含义。

④五大部件以运算器为中心进行组织。

4.请说明微型计算机系统的工作过程。

答:微型计算机的基本工作过程是执行程序的过程,也就是CPU自动从程序存放的第1个存储单元起,逐步取出指令、分析指令,并根据指令规定的操作类型和操作对象,执行指令规定的相关操作。

如此重复,周而复始,直至执行完程序的所有指令,从而实现程序的基本功能。

5.试说明微处理器字长的意义。

答:微型机的字长是指由微处理器内部一次可以并行处理二进制代码的位数。

它决定着计算机内部寄存器、ALU和数据总线的位数,反映了一台计算机的计算精度,直接影响着机器的硬件规模和造价。

微机原理课后习题解答

微机原理课后习题解答

微机原理习题第一章 ?绪论习题与答案1.? 把下列二进制数转换成十进制数、十六进制数及BCD码形式。

(2)?? 01011101.101B =解:(2)?????????? 01011101.101B = 93.625D = 5D.AH= (1001 0011.0110 0010 0101)BCD2.? 把下列十进制数转换成二进制数。

(1)?? 100D =(2)?? 1000D =(3)?? 67.21D =解:(1)?? ?100D = 01100100B(3)?? 67.21D = 1000011.0011B3.? 把下列十六进制数转换成十进制数、二进制数。

(1)?????? 2B5H? =(2)?????? 4CD.A5H =解:?????????? (1)????????????? 2B5H? =? 693D = 0010 1011 0101B ?????????? (2)????????????? 4CD.A5H = 1229.6445D = 0100 1100 1101.1010 0101 B 4.? 计算下列各式。

(1)?? A7H+B8H? =(2)?? E4H-A6H? =解:(1)?????????? A7H+B8H? = 15FH(2)?????????? E4H-A6H? = 3EH5.? 写出下列十进制数的原码、反码和补码。

(1)+89(2)-37解:(1)[+89 ] 原码、反码和补码为: 01011001B6.求下列用二进制补码表示的十进制数??? (1)(01001101)补=解:??? (1)(01001101)补= 77D7.请用8位二进制数写出下列字符带奇校验的ASCII码。

??? (1)C:1000011??? (2)O:? 1001111??? (3)M:1001101??? (4)P:? 1010000解:??? (1)C:0 1000011?? (2)O:0 1001111??? (3)M:1 1001101?? (4)P:1 10100008.请用8位二进制数写出下列字符带偶校验的ASCII码。

微机原理100道题答案

微机原理100道题答案

微机原理作业答案40.源程序如下:CMP AX,BXJNC L1JZ L2JNS L3JNO L4JMP L5设AX=74C3H,BX=95C3H,则程序最后将转到哪个标号处执行?试说明理由。

答:∵ 74C3H- 95C3HDF00H且有:CF=1, ZF=0, SF=1, OF=1∴程序将转到L5标号处执行。

41.设IBM PC微机内存中某个单元的物理地址是12345H,试完成下列不同的逻辑地址表示:(1)1234H:___H(2)____H:0345H答:(1)1234H:05H (2) 1200H:0345H42.假设某程序执行过程中,(SS)=0950H,(SP)=64H,试问该用户程序的堆栈底部物理地址是多少?答:(SS)*10H+(SP)-1=09563H43.设堆栈段寄存器(SS)=0E4BH,程序中设堆栈长度为200H个字节。

试计算出堆栈底部字单元物理地址,堆栈指针SP初始值(即堆栈中没有数据时)和SP初始值指向的物理地址。

答:物理地址为:0E6AFH-2, SP的初始值为200H,指向的物理地址为:0E6AFH.。

44.对于由8086CPU组成的系统,堆栈的位置如何确立?堆栈的首址(即:SS中的值)是不是栈底?为什么?答:8086系统中堆栈的位置由SS和SP初始化后确立:其中(SS)*16决定了堆栈段起始单元的地址,即堆栈段首址;(SS)*16+(SP初值)-1决定了堆栈段最后一个单元的地址,即栈底;(SS)*16+(SP现值)决定了堆栈段当前栈顶。

显然,堆栈首址并不是栈低。

一般来说,在堆栈所在的内存区内,栈底为高地址端。

堆栈初始化后,栈顶指向栈底+1单元的偏移地址。

当堆栈压入数据后,栈顶地址总是小于栈底地址(因为一次压入两个字节数据),位于低地址端。

45.设8255A的4个端口地址分别为0C0H、0C2H、0C4H和0C6H,要求用按位置位/复位控制字使PC6输出方波信号,试编程实现。

微机原理习题答案(完整版)

微机原理习题答案(完整版)

第一章习题答案1-1 请说明CPU的功能以及CPU是如何执行指令和程序的。

答:CPU的功能是执行程序和统筹处理计算机系统中各类事务。

CPU执行指令分为3步:取指令、分析指令、执行指令;计算机程序是由一条条指令按一定的顺序排列组成的,CPU执行程序的过程就是一条条指令累计执行的过程,其方式分为串行作业方式和流水线作业方式。

1-2 请说明单片机内部主要是由哪些部件组成的,并说明各部件的作用。

答:CPU:由控制器和运算器构成,控制器的作用是执行指令和协调系统各部件的工作;运算器的作用是进行逻辑运算和算术运算。

存储器:存储计算机工作时使用的信息,即指令代码和数据代码。

I/O接口电路:具有数据缓冲、数据隔离及数据转换的功能。

1-3 请问对于容量位8K的存储器芯片,它的地址线是多少根?答:8K=8192=213,故地址线为13根。

另附:存储器的数据线由存储器的字长决定,例如一块32K×16(存储器容量显示格式:存储单元数×存储单元的字长)的存储器,其地址线为15根,数据线为16根。

1-4 将十进制数78,134,分别用二进制数、十六进制数和8421BCD吗表示。

答:(78)D=(1001110)B=(4E)H=(01111000)8421BCD(134)D=(10000110)B=(86)H=(000100110100)8421BCD注:8421BCD码为4位表示一个十进制数符,本质是符号不是数值,所以不可省略0。

1-5 将下列真值分别转化为用8位和16位二进制数表示的原码、补码和反码。

X=1000100;[X]8位原=[X]8位反=[X]8位补=01000100;[X]16位原=[X]16位反=[X]16位补=0000000001000100X= -1000100[X]8位原=11000100,[X]8位反=10111011,[X]8位补=10111100;[X]16位原=1000000001000100,[X]16位反=1111111110111011,[X]16位补=1111111110111100;X= -0111111[X]8位原=10111111,[X]8位反=11000000,[X]8位补=11000001;[X]16位原=1000000000111111,[X]16位反=1111111111000000,[X]16位补=1111111111000001;1-6 将下列补码转化成二进制数的真值。

微机原理习题集答案

微机原理习题集答案

第1章 概述1.电子计算机主要由.电子计算机主要由 运算器运算器 、 控制器控制器 、 存储器存储器 、 输入设备输入设备 和 输出设备输出设备 等五部分组成。

等五部分组成。

等五部分组成。

2. 运算器运算器 和 控制器控制器 集成在一块芯片上,被称作CPU CPU。

3.总线按其功能可分.总线按其功能可分 数据总线数据总线 、 地址总线地址总线 和 控制总线控制总线 三种不同类型的总线。

三种不同类型的总线。

4.计算机系统与外部设备之间相互连接的总线称为.计算机系统与外部设备之间相互连接的总线称为 系统总线(或通信总线)系统总线(或通信总线) ;用于连接微型机系统内各插件板的总线称为系统内总线(板级总线) ; CPU 内部连接各寄存器及运算部件之间的总线称为内部连接各寄存器及运算部件之间的总线称为 内部总线内部总线 。

5.迄今为止电子计算机所共同遵循的工作原理是迄今为止电子计算机所共同遵循的工作原理是 程序存储程序存储 和 程序控制程序控制 的工作原理。

的工作原理。

这种原理又称这种原理又称为 冯·诺依曼型冯·诺依曼型 原理。

原理。

第3章 微处理器及其结构1.8086/8088 CPU 执行指令中所需操作数地址由执行指令中所需操作数地址由 EU EU EU 计算出计算出计算出 16 16 16 位偏移量部分送位偏移量部分送位偏移量部分送 BIU BIU BIU ,由,由,由 BIU BIU BIU 最后最后形成一个形成一个 20 20 20 位的内存单元物理地址。

位的内存单元物理地址。

2.8086/8088 CPU CPU在总线周期的在总线周期的在总线周期的T1 T1 T1 时刻,用时刻,用时刻,用A19/S6A19/S6A19/S6~~A16/S3 A16/S3 输出输出输出 20 20 20 位地址信息的最高位地址信息的最高位地址信息的最高 4 4 4 位,而在位,而在其他时钟周期,则输出其他时钟周期,则输出 状态状态 信息。

微机原理课后作业参考答案

微机原理课后作业参考答案

1.3 完成下列数制的转换(1) 10100110 B = (166) D = (A6) H(2) 0.11 B = (0.75) D(3) 253.25 = (11111101.01) B = (FD.4) H(4) 1011011.101 B = (5B.A) H = (10010001.0110 0010 0101) BCD1.5 写出下列真值对应的原码和补码的形式(1) X = -1110011 B(2) X = -71 D(3) X = +1001001 B解:(1) [X]原= 11110011 B , 负数,[X]补= [X]反+ 1 = 10001101 B(2) [X]原= 11000111 B , 负数,[X]补= [X]反+ 1 = 10111001 B(3) [X]原= 01001001 B , 正数,[X]补= [X]原= 01001001 B1.7 已知X和Y的真值,求[X+Y]的补码(1) X = -1110111 B Y = +1011010 B(2) X = 56 D Y = -21 D解:(1) [X]原= 11110111 B , 负数,[X]补= [X]反+ 1 = 10001001 BY为正数,[Y]原= [Y]补= 01011010 B所以,[X+Y]补= [X]补+ [Y]补= 11100011 B(2) [X]原= 00111000 B = [X]补[Y]原= 10010101 B , [Y]补= 11101011 B[X+Y]补= [X]补+ [Y]补= 00100011 B1.8 已知X = -1101001 B, Y = -1010110 B, 用补码表示X-Y = ?解: [X]原= 11101001 B,[X]补= 10010111 B[-Y]原= 01010110 B,[-Y]补= 01010110 B所以,[X-Y]补= [X]补+ [-Y]补= 11101101 B所以,[X-Y]原= 10010011 B= -0010011 B = -19 D1.12 如果74LS138译码器的C,B,A三个输入端的状态为011,此时该译码器的8个输出端中哪一个会输出“0”解:011 B = 3 D, #Y3低电平有效2.18 设当前数据段位于存储器的A8000H到87FFF H,DS段寄存器的内容应是什么?解:DS段寄存器存放段基址,由当前数据段在存储器中的存储空间的起始地址可知DS的内容为A800 H。

微机原理习题解答

微机原理习题解答

6、完成下列码制之间的转换 [X]原=BDH [X]补、[X]反、X真值= ? [X]反=3CH [X]补、[X]原、X真值= ? [X]补=8AH [X]反、[X]原、X真值= ?
[X]原=BDH [X]补=C3H [X]反=C2H X真值= -61 [X]反=3CH [X]补=3CH [X]原=3CH X真值= 60 [X]补=8AH [X]反=89H [X]原=F6H X真值= -118
第二章习题 1、 CPU常用的工作方式有哪几种?8086CPU采用 哪种工作方式? CPU 常 用 的 工 作 方 式 有 串 行 方 式 和 并 行 方 式 , 8086CPU采用并行工作方式。 2 、 8086CPU 有哪几部分组成?各组成部分的主要 功能是什么? 8086CPU有执行部件EU和总线接口部件BIU组成。 EU的主要功能是 (1)从指令队列中取出指令。 (2)对指令进行译码,发出相应的控制信号。 (3)向BIU发出请求。 ( 4 )执行指令包括进行算术、逻辑运算,并计算 操作数的偏移量。
5、完成下列数制之间的转换 (48)D=( 30 )H=(00110000)B (6DB)H=(1755)D=(11011011011)B (10101101)B=( AD)H=( 173 )D (98)D=( 10011000)BCD=( 1100010 )B (010110010010)BCD=( 592 ) D =(1001010000) B
4、微型计算机内部、外部的结构特点是什么? 总线结构的优点是什么?
微型计算机内部为单总线结构,外部为三总线结 构即AB、DB、CB 有了总线结构以后,系统中各功能部件的相互关 系变为各个部件面向总线的单一关系,一个部件 只要符合总线标准,就可以连接到采用这种总线 标准的系统中,使系统功能很方便得到扩展。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
注意:1.不允许立即数直接送段寄存器。 2.目的操作数不能为立即数和CS段寄存器。 3.不能实现存储单元之间的数据传送。 4.不允许两个段寄存器之间直接传送信息。 5.操作数类型要匹配,字对字,字节对字节。
1.判断下列指令是否正确。若不正确,指出错误原因。 (1)MOV DS,SS 内容应由AX传送 (2) MOV AH,DX 寄存器类型不匹配 (3)MOV [BX],[SI] 不能在两个内存单元之间传递参数 (4) MOV CS ,[1000] CS不能为目的操作数 (5)INC [BX] 内存单元的内容类型不确定,可能是字节或字
• LLL: INC AX • ADD BX,BX • SHR DX,1 • ( ) • HLT
1、AX=0014H,BX=200H,CX=0000H, DX=0000H 2、AX=0012H,0080H,0002H,0000H 3、0011H,0040H,0003H,0001H
编写一内存自检程序,检查从 2000H:0000H开始的64KB是否损坏,若 损坏转RAM_ERR,若完好转RAM_OK
2、若某数据区得开始地址为A7F0H:2B40H,则该数据 区得首字单元和32个字的末字单元的物理地址分别为多 少? 解;首地址(A7F0H*10H)+*2=AAA7EH 3、若[DS]=6100H,则当前数据段的起始地址是什么?末 地址为多少? 解:起始地址:61000H;段的长度为64K, 61000H+FFFFH=70FFFH。
2X+8X MOV MOV SHL SHL ADD SHR MOV MOV INT CODE END
AH,0 AL,Y AX,1 AX,1 BX,AX BX,1 Z,BX AH,4CH 21H ENDS
;2Y ;4Y ;10X+4Y ;(10X+4Y)/2
先利用9号功能调用显示提示信息,再利用10号功能调用 输入字符串。因实际键入字符个数在BUFFER+1单元, 是二进制数,所以需要进行二进制数到十进制数的转换, 才能显示输出。程序如下: CRLF MACRO MOV AH,2 MOV DL,0DH INT 21H MOV AH,2 MOV DL,0AH INT 21H ENDM DATA SEGMENT STRING DB ′INPUT STRING----′,0DH,0AH, ′$′ BUFFER DB 80,0,80 DUP(?) DATA ENDS
编写程序完成求1+2+3+……N的累加和,直到累加和超过 1000为止。统计被累加的自然数的个数送CN单元,累加和送 SUM。
(1)
• • • • • • • • • • •
程序如下: STAC SEGMENT STACK DB 200 DUP(0) STACK ENDS DATA SEGMENT X DW 00ABH Y DW –5 Z DW 200 MAX DW ? DATA ENDS CODE SEGMENT
• ASSUME • START: MOV • MOV • MOV • CMP • JG • MOV • CMP • JG • L2: MOV • JMP •
DS:DATA,SS:STACK,CS:CODE AX,DATA DS,AX AX,X AX,Y ;X>Y? L1 AX,Y ;Y>Z? AX,Z EXIT AX,Z EXIT
4、设一个字节数据X存放在AL寄存器中,试说明下 列程序的功能。 XOR AH,AH SAL AX,1 MOV BX,AX MOV CL,2 SAL AX,CL ADD AX,BX 完成(AL)X10的功能,即10X。
• 5、假设AX=0078H,BX=06FAH,CX=1203H, DX=4105H,CF=1,下列每条指令单独执行后, 标志位CF,OF和ZF的值是多少? • DEC BX 不影响标志位 • DIV CH 所有标志位无定义 • MUL BX,若乘法结果DX包含有效值C =1, OF=1,其他不定。否则OF=0、CF=0 • SHR AX,CL C=0,ZF=0,其他不定(进位 移) • AND AL,0F0H C=0,Z=0,O=0。 AND指令每
AL,BUFFER+1 AH,0 CL,10 CL CL,AH DL,30H DL,AL AH,2 DL,CL DL,30H AH,2 AX,4C00H
;实际键入字符个数
• 1、为了减轻总线负载,总线上的部件大都具有 三态逻辑,三态逻辑电路输出信号的3个状态是 () • 处理器总线物理上的含义是() • 2、8086在最大模式和最小模式下,引脚信号有 什么不同? • 3、简述总线的三种数据传输方式。
解 检查内存的一般方法是先往内存的每一单元 写一个特征字,稍后再读出来看是否还是那个特 征字,如果每个单元都正确,则内存完好。一般 往里面写两次特征字,一次写55H,一次写 0AAH,这样操作是保证每个单元的每一位既能 写1又能写0,确保安全。程序如下:
MOV AX,2000H MOV ES,AX MOV DI,0 MOV CX,8000H MOV AX,5555H CLD REP STOSW ;先给每一单元写入55H MOV CX,8000H MOV DI,0 REPE SCASW ;扫描每个单元是否为55H? JNZ RAM_ERR ;有错转RAM_ERR MOV CX,8000H MOV DI,0 MOV AX,0AAAAH REP STOSW
作业:1、求表达式Z=(10X+4Y)/2的值(X、 Y为字节型变量,Z为字型变量)
2、键盘输入一字符串(最大为80个)存入BUFFER 缓冲区,并将实际键入的字符个数以十进制数显示 输出。
程序如下: DATA SEGMENT X DB 66H Y DB 35H Z DW ? DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA MOV AX,DATA MOV DS,AX XOR AX,AX MOV AL,X SHL AX,1 ;2X MOV BX,AX SHL AX,1 ;4X SHL AX,l ;8X ADD BX,AX ;
;再给每一单元写入0AAH MOV CX,8000H MOV DI,0 REPE SCASW;扫描每个单元是否为0AAH? JNZ RAM_ERR ;有错转RAM_ERR RAM_OK: ;内存完好处理程序段 RAM_ERR: ;内存损坏处理程序段
作业: 下面程序片段中有两条转移指令,试计 算这两条指令的位移量。左边为逻辑地址及机器 码,右边为指令助记符。 13BA:001B F3 REPZ 13BA:001C A6 CMPSB 13BA:001D 75 ? JNZ 0020 ① 13BA:001F CB SAME: RET 13BA:0020 41 FOUND: INC CX 13BA:0021 89 0E 06 00 MOV [0006],CX 13BA:0025 EB ? J MP 001F ②
(6) MOV AX,[BX+DX] DX不能做基址寄存器 (7)MOV AX,[DI][SI] DI和SI不能一起用 (8) XCHG AX,2000H 两个操作数之间的任意一个都不能是立即数 (9)IN AL,BX 此指令的源操作数只能是DX (10)XCHG BX,IP IP不能做任一操作数
ASSUME MOV MOV LEA MOV LEA MOV DX AH
CRLF
CODE SEGMENT CS:CODE , AX , DS , DX , AH , INT 21H , , INT 21H ; 宏
DS:DATA DATA AX STRING 9 BUFFER 0AH


MOV 送AL MOV MOV DIV MOV MOV ADD MOV INT 21H MOV ADD MOV INT 21H MOV INT 21H CODE ENDS END
程序如下:
• MOV BX,0 ;0送BX • LP: INC BX ;BX加1 • ADD AX,BX ;求累加和 • CMP AX,1000 ;比较 • JBE LP ;≤1000转 • MOV SUM,AX • MOV CN,BX ;送结果 • • CODE ENDS • END START ;汇编结束
• L1:CMP AX,Z;X>Z? • JLE L2 • EXIT: MOV MAX,AX • CODE • ENDS END
START
(2)
• • • • • • • • •
DATA SEGMENT SUM DW ? CN DW ? DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX ;初始化 MOV AX,0 ;0送AX
次操作都使CF清0,
6、假设在下列程序段的括号中分别填入以下命令: 1、LOOP LLL;2、LOOPNZ LLL;3、LOOPZ LLL。
判断CX ≠0且ZF=1指令执行后,AX=?BX=?
CX=?DX=? 程序如下: ORG 0200H MOV AX,10H MOV BX,20H MOV CX,04H MOV DX,03H
解 JNZ 0020指令的位移量为:目的地址-IP的当 前值=0020H-001FH=01H。位移量为正,表明 由低地址向高地址转移。 JMP 001F指令的位移量为:目的地址-IP的当 前值=001FH-0027H=-8H,负数取补码,位 移量为F8H。位移量为负,表明由高地址向低地 址转移。
作业: 试编一程序,求三个带符号字数据块中的最大值,并将最大值存入 MAX字单元中。
相关文档
最新文档