微计算机原理(第2版)第四章课后习题答案 潘名莲 马争 丁庆生 编著
微计算机原理(第2版)课后习题答案潘名莲马争丁庆生编著
第七章微计算机的中断系统7-1 什么是中断类型码、中断向量、中断向量表?在基于8086/8088的微机系统中,中断类型码和中断向量之间有什么关系?解:处理机可处理的每种中断的编号为中断类型。
中断向量是指中断处理程序的入口地址,由处理机自动寻址。
中断向量表是存放所有类型中断处理程序入口地址的一个默认的内存区域。
在8086系统中,中断类型码乘4可得到向量表的入口,从此处读出4字节内容即为中断向量。
7-2 什么是硬件中断和软件中断?在PC机中两者的处理过程有什么不同?解:硬件中断通过中断请求线输入电信号来请求处理机进行中断服务;软件中断是处理机内部识别并进行处理的中断过程。
硬件中断一般由中断控制器提供中断类型码,处理机自动转向中断处理程序;软件中断完全由处理机内部形成中断处理程序的入口地址并转向中断处理程序,不需外部提供信息。
7-3 试叙述基于8086/8088的微机处理硬件中断的过程。
解:以INTR中断请求为例。
当8086收到INTR的高电平信号时,在当前指令执行完毕且IF=1的条件下,8086在两个总线周期中分别发出INTA#有效信号;在第二个INTA#期间,8086收到中断源发来的一字节中断类型码;8086完成保护现场的操作,CS、IP内容进入堆栈,清除IF、TF;8086将类型码乘4后得到中断向量入口地址,从此地址开始读取4字节的中断处理程序的入口地址,8086从此地址开始执行,完成INTR中断请求的响应过程。
7-4 在PC机中如何使用“用户中断”入口请求中断和进行编程?解:PC机中分配用户使用的中断是IRQ9,经扩展槽B40h亿引出,故把用户的中断请求线连接到B40h上。
在应用程序中,利用25H号系统调用将中断服务程序的入口地址写入对于0AH 类型中断对应的中断向量表中去。
在应用程序中把主片8259A D2屏蔽位清零,把从主片8259A D1屏蔽位清0,使主片的IR2、从片的IR1可以输入中断请求。
微机基础学习知识原理与接口技术(清华第二版)第四章课后复习
8(1)DATA SEGMENTORG 0E000HTA1 DB '01234'TA2 DB 5 DUP(?)TA3 DW 1234H,5678H,1369HTA4 DW 2 DUP(?)TA5 DD 2A004455H,3B334778HDATA ENDS(2)STACKI SEGMENT PAGE STACKSBUFF DB 100 DUP(?)ETACKI ENDS(3)CODE SEGMENTASSUME CS:CODE,DS DATA,ES:EXT,SS:STCSTARTMOV AX,DATAMOV AX,DATAMOV DS,AXMOV AH,4CHINT 21HCODE ENDSEND START9(1)COUNT EQU 16H为16H中字符串的长度;COUNT DW 16H为每个表达式分配两个单位的储存单元并将16H存入该单元中。
(2)MOV AX,BX为将BX的内容传给AXMOV AX,[BX]为将BX的有效地址传给AX(3)MOV AX,OFFSET STB为将STB的偏移地址装入AXMOV AX, STB为将STB中的数据传入AX(4)MOV AX,OFFSET STB为将STB的偏移地址装入AXLEA AX,STB为将STBDE 有效地址传给AX12X1的逻辑地址PA=10A0H*10H+0010H=10A10H X2的逻辑地址PA=10A0H*10H+0022H=10A22H 13(1)2437H (2)00H (3)2 (4)43H (5)10 (6)10 14(1)(AL )=44H (2)(AX )=0078H (3)(AX)=0FH8解: (1)DATA SEGMENT ORG 0E000H TA1 DB '01234'TA2 DB 5 DUP(?)TA3 DW 1234H,5678H,1369H TA4 DW 2 DUP(?)TA5 DD 2A004455H,3B334778H DATA ENDS (2)STACKI SEGMENT PAGE STACK SBUFF DB 100 DUP(?) ETACKI ENDS (3)CODE SEGMENTASSUME CS:CODE,DS DATA,ES:EXT,SS:STC STARTMOV AX,DATA MOV AX,DATA MOV DS,AX MOV AH,4CHINT 21H CODE ENDSEND START 9解:(5)COUNT EQU 16H 为16H 中字符串的长度;COUNT DW 16H 为每个表达式分配两个单位的储存单元并将16H 存入该单元中。
微计算机原理(第2版)第四章课后习题答案 潘名莲 马争 丁庆生 编著
第四章汇编语言程序设计4-1 汇编语言程序设计的几个步骤是:解:编写汇编语言程序的过程基本上与编写高级语言程序的过程是相同的。
(1)从实际问题抽象出数学模型;(2)确定解决该数学模型的方法,选择最佳算法;(3)画出流程图,根据算法把解决问题的思路和方法用图形表示出来;(4)分配内存工作单元和寄存器;(5)根据流程图编制程序;(6)上机调试,检测和排错。
4-2 计算下列表达式的值(A1=50H,B1=20,G1=2)。
(1)A1*100+B1 (2)A1 MOD G1+B1 (3)(A1+2)*B1-2 (4)B1/3 MOD 5(2)(5)(A1+3 )*(B1 MOD G1)(6)A1 GT G1 (7)B1 AND 7(8)B1 SHL 2+G1 SHR 1解:(1)5020 (2)20 (3)1038 (4)1 (5)0 (6)0FFFFH (7)04H (8)51H4-3 已知数据段定义如下,设该段从03000H开始。
DSEG SEGMENTARRAY1 DB 2 DUP (0, 1,?)ARRAY2 DW 100 DUP (?)FHZ EQU 20HARRAY3 DB 10 DUP (0,1,4 DUP(2), 5)DSEG ENDS试用分析运算符OFFSET、SEG、LENGTH、TYPE、SIZE求出ARRY1、ARRY2、ARRY3的段、偏移量和类型,以及它们的LENGTH和SIZE解:变量名OFFSET SEG TYPE LENGTH SIZE ARRY1 0 0300H 1 2 2(2×1) ARRY2 06H 0300H 2 100 200(100×2) ARRY3 206=0CEH 0300H 1 10 10(10×1)4-4 (略)4-5 以下语句汇编后,变量CON1,CON2和CON3的内容分别是多少?N1=10N2=5N3=3CON1 DB (N1 AND N2 OR N3) GE 0FH CON2 DW (N2 AND N1 XOR N3) LE 0FH CON3 DB (N1 MOD N3) LT (N2 SHR1)解:如图所示……CON1 00 CON2 FF00 CON3 FF……4-6 设有一个已定义的数据段如下:DA TA SEGMENTV AR1 DB ?, ?V AR2 DB ?, ?ADR DW V AR1,V AR2DA TA ENDS若要使ADR+2的字单元中存放内容为“0022H”,上述空白处应填入什么语句?解:ORG 0020H4-7 下述程序段执行后,寄存器CX,SI的内容是多少?ARRY DW 20 DUP (5)…XOR AX, AXMOV CX, LENGTH ARRYMOV SI, SIZE ARRY-TYPE解:(CX)=14H (SI)=26H4-8 试定义一个结构,它应包括一个学生的下列信息:姓名、学号、及3门课程的成绩。
微机第4章 汇编语言程序设计
· 第 2 版 电 子 工 业 出 版 社
根据表达式所表示的内容而分,有两类表达式
总线锁定前缀Lock:
用于产生Lock信号,防止其他总线主控设备中断CPU在总线上的传输操 作。
段超越前缀:
将前缀中指明的段Reg.取代指令中默认的段Reg。
15
2014-12-23
微 计 算 机 机 原 理
4.2.2 语句的构成与规范
4.2 MASM宏汇编语言程序的规范
4. 操作符或助记符:
操作数可以是1个、2个或0个,2个时用逗号‘,’分开。
INC BX; 1个操作数 MOV AX,DATA ; 2个操作数 RET; 0个操作数
· 第 2 版 电 子 工 业 出 版 社
伪指令语句
操作数的格式和含义随伪操作指令不同而不同。
操作数的几种情况:
常量操作数:如 34 等。 寄存器操作数:如 AX 等。 存储器操作数:如[0100H] 等,包括标号和变量 表达式操作数:如[AX+2]、SEG NUM1等
字符串常数
由 单 引 号 括 起 来 的 一 串 字 符 。 例 如 : ‘THIS IS A STUDENT!’ ‘12345’
注意: ’ 12345’ 其值并非是十进制数 12345 ,而是代表它
们所对应的ASCII码,即31H,32H,33H,34H,35H。
19 2014-12-23
微 计 算 机 机 原 理
是指令性语句和伪指令语句的复合体,是按照一定规则,将 一组反复出现的指令集根据用户需要定义的新指令; 在汇编时被展开,在运行时执行其展开体。
2014-12-23
微计算机原理第二版潘名莲题及答案
一、选择题(20分,在每小题的4个备选答案中选出一个正确的答案编号填写在该题空白处,每题2分)1.指令MOV DX,[BX]的寻址方式是。
(A)立即寻址(B)直接寻址(C)寄存器寻址(D)寄存器间接寻址2.若AL的内容为3FH,执行SHL AL,1指令后,AL的内容为。
(A)7EH (B)1FH (C)9FH (D)7FH3.属于在工作中需定时刷新的存储器的芯片是。
(A)SRAM (B)DRAM (C)EEPROM (D)EPROM4.某EPROM芯片上有19条地址线A0~A18,它的容量为。
(A)128K (B)256K (C)512K (D)1024K5.8086/8088CPU的SP寄存器是多少位的寄存器。
(A)8位(B)16位(C)24位(D)32位6.在STOSB指令执行的时候,隐含着寄存器的内容作为操作数的偏移地址,该寄存器是。
(A)SP (B)BX (C)SI (D)DI7.8255工作在方式0时,下面哪种说法不正确。
(A)A口输入无锁存能力(B)A、B口输出有锁存能力(C)C口输入有锁存能力(D)A、B、C三个口输出均有锁存能力8.采用DMA方式来实现输入输出是因为它。
(A)速度最快(B)CPU可不参与操作(C)实现起来比较容易(D)能对突发事件做出实时响应9.工作在最小模式下,8086/8088CPU芯片中,将地址信号锁存的信号是。
(A)DT/R (B)DEN (C)ALE (D)AEN10.在LOOP指令执行的时候,隐含着对计数器减1的操作,该计数器是用寄存器。
(A)AX (B)BX (C)CX (D)DX二、填空题(每小题2分,共10分)1.两个无符号数相等,该两数相减后ZF标志=。
2.执行LODSB后,SI的内容较该指令执行前增加1,说明DF=。
3.DMA控制器8237共有个相互独立的DMA通道。
4.8086/8088断点中断的向量码是。
5.利用8253产生对称的方波,应用其工作方式。
微计算机原理第2版课后习题答案潘名莲马争丁庆生编著汇总
(1) MOV SI, 2100H ⑷ ADC ZX, [BX][SI] (7) MOV AX, ES:[BX] 3-1所示,试指出下列各(1) MOV AX, 2010H (4) MOV AX, [BX](7)MOV AX, 1100H[BX+SI] ⑵ MOV AX, BX ⑸ MOV AX, 1100H[BX](8) M OVLEA AX, [SI](3) MOV AX, [1200H] (6) MOV AX, [BX][SI]解:(1)( AX )=2010H (2)(AX )=0100H (3)( AX )=4C2AH (4)( AX )=3412H(5) ( AX )=4C2AH (6) ( AX )=7856H (7) ( AX )=65B7H(8)( AX )=0002H第三章80x86指令系统3-1指令由 操作码 字段和 操作数 字段组成。
8086的指令长度在1~6字节 范围。
3-2分别指出下列指令中源操作数和目的操作数的寻址方式。
若是存储器寻址,使用表达 式表示出EA= ? PA= ?⑵ MOV CX, DISP[BX] (5) AND AX, DX (8)MOV AX, [BX+SI+:⑶ MOV [SI], AX (6) MOV AX, [BX+10H](9) MOV [BP], CX(10) PUSH DS解:3-3已知8086中一些寄存器的内容和一些存储器单元的内容如图 条指令执行后,AX 中的内容。
(1)OUT DX, AL⑵ OUT DX, AX⑶ IN AL, PORT⑷IN AX, 80H(5)OUT PORT1, AL(6)OUT PORT1, AX图3-13-4 已知(AX)=2040H,(DX)=380H,端口(PORT)=(80H)=1FH , ( PORT+1)=45H,执行下列指令后,指出结果等于多少?解:(0380H)=40H(380H)=40H (381h)=20H(AL)=1FH(AX)=451FH(PORT1)=40H(PORT1)=2040H3-5 已知:(SS)=0A2F0H,(SP)=00C0H,(AX)=8B31H,(CX)=0F213, 试画出下列指令执行到位置1和位置2时堆栈区和SP指针内容的变化示意图。
计算机网络(第二版)课后习题答案第四章
计算机网络第4章答案(高教第二版冯博琴)11.在提高以太网速度的过程中,人们主要解决的问题有哪些(分10Mb/s到100Mb/s,100Mb/s到1000Mb/s 分别论述)?升级到万兆以太网时,又有哪些问题需要解决?答:需要解决的共通问题是保证使用相同的以太网帧格式。
速率从10Mb/s提高到100Mb/s时解决的问题包括:传输速率的提高所造成的RFI/EMI辐射增大和网络跨距缩小,同一网络中同时兼容10Mb/s和100Mb/s设备,在半双工方式下保证CAMA/CD协议继续有效。
速率从100Mb/s提高到1000Mb/s时解决的问题包括:网络跨距缩小和短帧较多时网络效率降低。
同一网络中同时兼容10Mb/s、100Mb/s和1000Mb/s设备,在半双工方式下保证CAMA/CD协议继续有效。
速率从1000Mb/s提高到10000Mb/s时解决的问题主要是网络跨距的严重缩小以及如何有效地限制成本和功耗。
12.考虑一个使用CSMA/CD介质访问控制技术的100Mb/s局域网,若该网络跨距为1km,则理论上其最小帧长度至少应为多少?答:假定电磁波在铜介质中的传播速率约为0.7c,则:电磁波在网络中的一个来回的距离为2×103m,共需2×103/0.7c= 9.5238μs;当网络传输速率为100Mb/s时,9.5238μs可传输的位数为9.5238μs×100Mb /s≈952位。
即理论上的最小帧长度为952位。
13.以太网中全双工操作为什么能够增加网络跨距?在哪些介质上能采用全双工操作?答:以太网中全双工操作时将不再使用CSMA/CD介质访问控制方法,因此不受最小帧长度的限制,这意味着在允许的信号衰减范围内网络跨距不再受限制。
采用全双工操作时需要使用双绞线或光纤介质。
14.一个令牌环网的介质长度为1km,传输速率为16Mb/s,网中共有20台工作站。
若要求每个工作站在发送数据前的等待时间不能超过10ms,问此令牌环网能否满足要求?答:该令牌环上可容纳的比特位数Br=传播时延(5μs/km)×介质长度×数据速率+∑中继器延迟=5μs/km×1km×16Mb/s+20=100位=12.5字节。
微型计算机原理第二版课后答案
第二章2. 将下列二进制数分别转换为十进制数和十六进制数。
(1)111010B0011 1010B =3AH=3×16+10=58(2)10111100.111B1011 1100.1110B =BC.EH=11×16+12+14×16-1=188.875 (3)0.11011B0.1101 1000B =0.D8H=13×16-1+8×16-2=0.84375(4)11110.01B0001 1110.0100B=1E.4H=16+14+4×16-1=30.256. 选取字长n为8位(和16位两种情况),求下列十进制数的补码。
(1)X=-33X=-33=-21H=-010 0001B[X]补=1101 1111(2)Y=+33Y=+33=21H=0010 0001B[Y]补=0010 0001(3)Z=-128=-1000 0000B[Z]补=10000000 (可直接写出)或根据补码的定义[x]补=2n+x(mod 2n)求解:[Z]补=28-128=1 0000 0000B-1000 0000B =1000 0000B[Z]补=28-128=256-128=128=1000 0000B若字长 n=16则Z=-128=-000 0000 1000 0000B[Z]补= 1111 1111 1000 0000(4)N=+127[N]补=0111 1111(5)A=-65A=-65=-41H=-100 0001B[A]补=1011 1111(6)B=+65B=+65=+41H=+100 0001B[B]补=0100 0001(7)C=-96C=-96=-60H=-110 0000B[C]补=1010 0000(8)D=+96D= + 96= +60H= +110 0000B[D]=011000008. 设机器字长为8位,最高位为符号位,试对下列各式进行二进制补码运算,并判断结果是否溢出。
微型计算机原理课后习题答案第二版.docx
第一章请各位读者自习阅读课本,答案比较明显,方可找到答案,这里不再提供第二章1. 将下列十进制数转换成二进制和十六进制(1)129.75 = 100000001.11B= 81.CH(2)218.8125 = 1101 1010.1101B= DA.DH(3) 15.625 = 1111.101B= F.AH(4)47.15625 = 101111.00101B= 2F.28H2. 将下列二进制数转换成十进制和十六进制(1)111010B = 58= 3AH(2)10111100.11B = 188.875= BC.E H(3) 0.11011B = 0.84375= 0.D8 H(4)11110.01B = 30.25= 1E.4H4、完成下列16进制的加减法运算。
(1)0D14B H (2) 9C28.E H(3) 1678 .FC H (4) -80D7 H5. 计算下列表达式的值(1)128.8125+10110101.1011B+1F.2H= ( 101010101.101 ) B(2)287.68-10101010.11B+8E.EH=( 103.CE ) H(3) 18.9+1010.1101B+12.6H-1011.1001B= ( 36.525 ) D7. 写出下列以补码表示的二进制数的真值:1)[X]补= 1000 0000 0000 0000?X = - 1000 0000 0000 0000 = - 215 = - 32768(2)[Y]补= 0000 0001 0000 0001?Y = + 0000 0001 0000 0001 = +257(3)[Z]补= 1111 1110 1010 0101?X = - 000 0001 0101 1011 = - 347(4)[A]补= 0000 0010 0101 0111?X = + 0000 0010 0101 0111 = +5999、设有变量……..X+Y = 1B8 H Y+Z =161 HY+Z=13B H Z+V=0CC H(1) 不正确不正确不正确正确(2)正确正确正确溢出12. 试计算下列二进制数为无符号数、原码、反码、补码、8421BCD码时分别代表的数值大小。
微型计算机原理及应用技术 第二版 课后答案 (朱金钧 麻新旗)
第1章计算机基础知识教材习题解答1. 计算机中为什么都采用二进制数而不采用十进制数?【解】计算机的基本功能是对数的运算和处理。
计算机中,通过数字化编码技术,对所表示的数值、文字、符号及控制信息等进行数字编码,这种数字化表示方法不仅要适合于人的自然习惯,同时要满足机器中所用器件、线路的工作状态以及数据可靠传输与易于校验纠错等方面的要求。
一个具有两种不同的稳定状态且能相互转换的器件,就可以用来表示一位二进制数,所以表示二进制的器件易于制造且工作可靠,并且二进制数的运算规则也最简单,因此目前计算机中均采用二进制数来表示各种信息及进行信息处理。
2. 写出下列用原码或补码表示的机器数的真值:(1)01101101 (2)10001101 (3)01011001 (4)11001110【解】[X]补=01101101=+109(1) [X]原=01101101=+109[X]补=10001101=-115(2) [X]原=10001101=-13(3) [X]原=01011001=+89[X]补=01011001=+89[X]补=11001110=-50(4) [X]原=11001110=-783. 填空:(1) (1234)10=( )2=( )16(2) (34.6875)10=( )2=( )16(3) (271.33)10=( )2=( )16(4) (101011001001)2=( )10=( )16(5) (1AB.E)16=( )10=( )2(6) (10101010.0111)2=( )10=( )16【解】(1) (1234)10=( 10011010010 )2=( 4D2 )16(2) (34.6875)10=( 100010.1011 )2=( 22.B )16(3) (271.33)10=( 100001111.010101 )2=( 10F.54 )16(4) (101011001001)2=( 2761 )10=( AC9 )16(5) (1AB.E)16=( 427.875 )10=(110101011.111 )2(6) (10101010.0111)2=( 170.4375 )10=( AA.7 )164. 已知X=36,Y=-136,Z=-1250,请写出X、Y、Z的16位原码、反码和补码。
计算机组成原理课后答案(第二版)唐朔飞第四章 存储器
讨论:
地址线根数与容量为2的幂的关系, 在此为214,14根; 数据线根数与字长位数相等,在 此为32根。(注:不是2的幂的关系。 ) :32=25,5根
8. 试比较静态RAM和动态RAM。 答:静态RAM和动态RAM的比较见下表:
特性 存储信息
SRAM 触发器
DRAM 电容
破坏性读出
需要刷新 送行列地址
讨论: 1)刷新与再生的比较: 共同点: · 动作机制一样。都是利用DRAM存储元破 坏性读操作时的重写过程实现; · 操作性质一样。都是属于重写操作。
区别:
· 解决的问题不一样。再生主要解决DRAM存储元 破坏性读出时的信息重写问题;刷新主要解决长时间不 访存时的信息衰减问题。 · 操作的时间不一样。再生紧跟在读操作之后,时间 上是随机进行的;刷新以最大间隔时间为周期定时重复 进行。 · 动作单位不一样。再生以存储单元为单位,每次仅 重写刚被读出的一个字的所有位;刷新以行为单位,每 次重写整个存储器所有芯片内部存储矩阵的同一行。
解: (1)218 = 256K,则该机所允许的最大主存空间是256K×8位(或
256KB);
(2)模块板总数 = 256K×8/32K×8 = 8块 ; (3)板内片数 = 32K×8位/4K×4位
= 8 × 2 = 16片;
(4)总片数 = 16片× 8 = 128片; (5)CPU通过最高3位地址译码选板,次高3位地址译码选片。地址格式 分配如下:
4. 说明存取周期和存取时间的区别。 解:存取周期和存取时间的主要区别是:存取时间仅为完成 一次操作的时间,而存取周期不仅包含操作时间,还包含操作后 线路的恢复时间。即: 存取周期 = 存取时间 + 恢复时间 5. 什么是存储器的带宽?若存储器的数据总线宽度为32位, 存取周期为200ns,则存储器的带宽是多少? 解:存储器的带宽指单位时间内从存储器进出信息的最大数 量。 存储器带宽 = 1/200ns × 32位 = 160M位/秒 = 20MB/S = 5M字/秒 注意字长(32位)不是16位。 (注:本题的兆单位来自时间=106)
习 题_微型计算机原理及应用教程(第2版)_[共3页]
113 6.完善程序
这里主要是完善汇编语言程序的语法结构。
主要内容是在前面的基础上加上变量定义、段定义、段说明等,使程序段成为完整的程序。
;…………源程序…………
;…………数据段…………
DATA SEGMENT ;数据段定义
YEAR DW xxxx ;YEAR 中存放准备判断的年份
YN DB ? ;YN 存放结果,1表示闰年,0表示平年
DATA ENDS
;…………代码段…………
CODE SEGMENT
ASSUME CS:CODE,DS:DATA ;段说明
START:MOV AX,DATA ;数据段寄存器DS 赋值
MOV DS,AX ;
MOV AX,YEAR ;得到YEAR 的值
MOV BL,4 ;除以4
DIV BL
CMP AH,0 ;余数是否为0
JNZ A1 ;余数不为0,即不能整除,则跳转到A1处
MOV AX,YEAR ;因为上面的除法运算AX 的内容已经改
;所以AX 需要重新赋值
MOV BL,100 DIV BL
CMP AH,0 JZ A2
MOV YN,1 JMP EXIT
A2:MOV AX,YEAR ;除以400
MOV DX,0 ;因为除数是16位,所以被除数应为32位
;分别存放在DX:AX
MOV BX,400 DIV BX
CMP DX,0 JNZ A1
MOV YN,1 JMP EXIT
A1:MOV YN,0 ;
EXIT:HLT CODE ENDS
END START。
微机原理及接口第四章习题答案
“微机系统原理与接口技术”第四章习题解答1.判断以下说法能否正确,若有错,请说明原由并更正。
(1)伪指令在汇编过程中不会产生二进制代码。
(2)宏和过程的同样之处是都可用于简化源程序书写、精简目标代码。
(3)在计算机中,高级语言往常需要变换为汇编语言后才能履行。
(4)汇编语言程序上机一般包含编写、汇编、链接和调试几个步骤。
答:( 1)正确。
(2)错误。
宏不可以精简目标代码。
(3)错误。
高级语言程序经编译或解说后直接变换为目标代码。
(4)正确。
2.已知数据和符号定义A1DB?A2DB8K1EQU 100判断以下指令的正误,并说明错误指令的原由。
(1) MOVK1, AX(2) MOVA2, AH(3) MOVBX, K1MOV [BX] , DX(4) CMPA1, A2( 5) K1EQU 200答:( 1)错误。
K1 是符号常数,在此处相当于立刻数100 ,故不可以做目的操作数。
(2)正确。
(3)正确。
(4)错误。
A1、 A2 都是字节变量,相当于两个储存器单元,故不可以同时出现在一条指令中直接进行比较。
( 5)错误。
用EQU定义的符号不可以从头赋值,除非已用PURGE排除了原值。
3.若数据段中有定义NUM1EQU 23HNUM2DW0则指令MOV NUM2, NUM1 的源、目操作数的寻址方式以及指令履行后NUM2+ 1 单元的内容分别是什么?答:指令 MOV NUM2,NUM1的源操作数使用立刻数寻址,目的操作数使用直接寻址。
指令履行后NUM2+ 1 单元的内容是0。
4.设 DS=6000H, BX=8432H,SS=5000H,SP=3258H,内存 69632H~ 69635H 单元的内容挨次是 00H、11H、22H、33H。
4 字节指令 CALL DWORDPTR[BX+1200H] 自己位于 2000H:3250H处的双字单元中。
当8086 履行该指令后转移至子程序进口时,CS、IP 、 SS、SP 各寄存器以及栈顶 2 个字单元的内容分别是多少?答:履行结果为CS=3322H,IP=1100H ,SS=5000H,SP=3254H,栈顶的两个字即断点地点,为2000H: 3254H。
计算机硬件技术基础(第2版) 答案 第4章 习题 耿增民 孙思云 外部存储器
第4章外部存储器1. 名词解释磁表面存储器——磁表面存储器,它们都是利用涂敷在载体表面薄层磁性材料来记录信息的,载体和表面磁性材料统称为记录介质。
存储密度——磁表面存储器单位长度或单位面积磁层表面所能存储的二进制信息量。
存储密度分为道密度、位密度和面密度。
寻址时间——磁头的寻道时间和等待时间之和。
圆柱面——盘片上相同位置的磁道看上去就像在同一个圆柱体的表面上,于是我们就称之为柱面蓝光光盘——蓝光DVD,是DVD光碟的下一代光碟格式。
单倍速——单速光驱的传输率为150KB/s数据传输率——磁表面存储器在单位时间内向主机传送数据的字节数磁道——磁盘盘片的每一面都包含许多看不见的同心圆,盘上一组同心圆环形的信息区域称为磁道可读写式光盘——也叫可擦写型光盘,用户可以写入信息,也可以对写入的信息进行擦除和改写存储介质——存储数据的载体2. 填空题(1)硬盘上采用的磁头类型,主要有固定头和移动头两种。
(2)硬盘的动作时间主要指硬盘的平均寻道时间、平均访问时间、道至道时间、最大寻道时间和平均等待时间等。
(3)硬盘的内部数据传输率是指硬盘从盘片上读写数据到缓存的速度。
(4)硬盘是计算机主要的存储设备,最先由 IBM公司发明,它具有容量大体积小、速度较快、价格便宜等特点。
(5)硬盘的平均访问时间=平均寻道时间+平均等待时间。
(6)相对于DVD-ROM驱动器来讲,1倍速约等于CD-ROM倍速的9 倍。
(7)DVD是Digital Video Disk 的缩略语。
(8)CD-R记录机的性能指标是读写速度、接口方式、缓存容量、兼容性、和价格与品牌等。
(9)存储设备除了软驱、硬盘外,还包括光盘、U盘、和移动硬盘。
(10)硬盘浮动磁头组件是硬盘中最精密的部件之一,由磁头、传动手臂和传动轴三部分组成,是硬盘技术中最重要、最关键的一环,它类似于“笔尖”。
(11)硬盘工作时,通过马达的转动将盘片上用户需要的数据所在扇区转动到磁头下方供磁头读取。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第四章汇编语言程序设计4-1 汇编语言程序设计的几个步骤是:解:编写汇编语言程序的过程基本上与编写高级语言程序的过程是相同的。
(1)从实际问题抽象出数学模型;(2)确定解决该数学模型的方法,选择最佳算法;(3)画出流程图,根据算法把解决问题的思路和方法用图形表示出来;(4)分配内存工作单元和寄存器;(5)根据流程图编制程序;(6)上机调试,检测和排错。
4-2 计算下列表达式的值(A1=50H,B1=20,G1=2)。
(1)A1*100+B1 (2)A1 MOD G1+B1 (3)(A1+2)*B1-2 (4)B1/3 MOD 5(2)(5)(A1+3 )*(B1 MOD G1)(6)A1 GT G1 (7)B1 AND 7(8)B1 SHL 2+G1 SHR 1解:(1)5020 (2)20 (3)1038 (4)1 (5)0 (6)0FFFFH (7)04H (8)51H4-3 已知数据段定义如下,设该段从03000H开始。
DSEG SEGMENTARRAY1 DB 2 DUP (0, 1,?)ARRAY2 DW 100 DUP (?)FHZ EQU 20HARRAY3 DB 10 DUP (0,1,4 DUP(2), 5)DSEG ENDS试用分析运算符OFFSET、SEG、LENGTH、TYPE、SIZE求出ARRY1、ARRY2、ARRY3的段、偏移量和类型,以及它们的LENGTH和SIZE解:变量名OFFSET SEG TYPE LENGTH SIZE ARRY1 0 0300H 1 2 2(2×1) ARRY2 06H 0300H 2 100 200(100×2) ARRY3 206=0CEH 0300H 1 10 10(10×1)4-4 (略)4-5 以下语句汇编后,变量CON1,CON2和CON3的内容分别是多少?N1=10N2=5N3=3CON1 DB (N1 AND N2 OR N3) GE 0FH CON2 DW (N2 AND N1 XOR N3) LE 0FH CON3 DB (N1 MOD N3) LT (N2 SHR1)解:如图所示……CON1 00 CON2 FF00 CON3 FF……4-6 设有一个已定义的数据段如下:DA TA SEGMENTV AR1 DB ?, ?V AR2 DB ?, ?ADR DW V AR1,V AR2DA TA ENDS若要使ADR+2的字单元中存放内容为“0022H”,上述空白处应填入什么语句?解:ORG 0020H4-7 下述程序段执行后,寄存器CX,SI的内容是多少?ARRY DW 20 DUP (5)…XOR AX, AXMOV CX, LENGTH ARRYMOV SI, SIZE ARRY-TYPE解:(CX)=14H (SI)=26H4-8 试定义一个结构,它应包括一个学生的下列信息:姓名、学号、及3门课程的成绩。
然后给出3条机构预置语句,将3个学生的情况送入3个结构变量中。
解:STUD STRUC ;定义一个结构,结构名为STUD NAME1 DB ‘’;姓名字段NUM DB ? ;学号字段SCOR DB 3 DUP (?) ;三门课程成绩字段STUD ENDSDA TA SEGMENT ;在数据段中通过三个结构变量引用,并赋值STUD1 STUD <’ZHU MEING’, 3, 88, 79, 91> ;结构变量名STUD1STUD2 STUD <’ZHANG XING’, 15, 78, 83, 77> ;结构变量名STUD2STUD3 STUD <’W ANG Y AN’, 12, 91, 92, 93> ;结构变量名STUD3DA TA ENDS4-9 试定义一条宏指令,它可以实现任一数据块的传送(假设无地址重叠),其源地址、目的地址和块长度作为参数处理。
解:根据要求,子程序的入口参数有:源数据区和目的数据区的首址以及数据块的大小(包含的字节数)。
假设参数传递采用固定内存单元传递方式。
SADR——源数据区首地址;DADR——目的数据区首地址;SLENG——数据块长度。
程序如下:SMOVE MACRO SADR, DADR, SLENGASSUME CS; CODELDS SI, SADRLES DI, DADRMOV CX, SLENGCLDCMP SI, DIJA MOVESTDADD SI, CXDEC SIADD DI, CXDEC DIMOVE: MOVSBLOOP MOVERETENDM4-10 设V AR1和V AR2为字变量,LAB为标号,试判断下列指令的正误,并改正:(1)ADD V AR1 V A2 (2)JNZ V AR1 (3)SUB AL, V AR1(4)JMP NEAR LAB (5)JMP LAB[SI] (6)MOV AL, V AR2解:(1)错,ADD的两个操作数不能同时为存储单元。
改:MOV AX, V AR1ADD AX, V AR2(2)错,JCC后面应该是标号,不应该是变量改:JNZ LAB(3)错,两个操作数不匹配改:SUB AX, V AR1(4)错,缺少PTR运算符改:JMP NEAR PTR LAB(5) 错,LAB与[SI]不能相加改:JMP FAR PTR LAB 或者JMP WORD PTR [SI](6) 错,操作数类型不匹配改:MOV AX, V AR24-11 已知数据定义如下,问L1和L298等于多少?B1 DB 1,2,3,‘123’B2 DB 0L1 EQU $—B1L2 EQU B2—B1解:L1=$—B1=7—0=7,L2=B2—B1=6—0=64-12 对于下列数据定义,指出以下指令的错误。
A1 DB ?A2 DB 10K1 EQU 1024(1) MOV K1,AX(2) MOV A1,AX(3) MOV BX, A1MOV [BX], 1000(4) CMP A1,A2(5) K1 EQU 2048解:(1)K1为名称,表示一立即数,不能做为目的操作数。
(2)A1为字节型,类型不匹配(3)类型不匹配(4)源和目的操作数不能同为存储器操作数(5)对已经被EQU定义的K1,在本程序段不能二次定义4-13 试编程计算Z=5X+3Y+10.已知X,Y均放在数据段,其值由编程者自定。
结果Z仍放在数据段。
解:DA TA SEGMENTX DB 10Y DB 5Z DW ?DA TA ENDSSTACK SEGMENT PARA STACK ‘STACK’DW 20H DUP (0)STACK ENDSCODE SEGMENTASSUME CS:CODE, DS:DA TA, SS: STACKMAIN PROC FARPUSH DSMOV AX, 0PUSH AXSTART: MOV AX, DA TAMOV DS, AXMOV AL, XMOV BL, YMUL BL ;X*5MOV DX, AX ;转存至DXMOV AL, YMOV BL, 3MUL BL ;Y*3,积在AX中ADD AL, 0AHADD AX, DXMOV Z, AX ;结果仍放数据段RETMAIN ENDPCODE ENDSEND START4-14 (略)4-15 用查表法将存放于数据段中一个有序的十六进制数串(范围:0~FH)翻译成ASSII码表仍放于数据段中.解:DA TA SEGMENTTAB DB 30H, 31H, 32H, …,36H, 37HDB 38H, 39H, 41H, …,45H, 46HHEX DB 6ASC DB ?DA TA ENDSSTACK1 SEGMENT PARA‘A TACK’DW 20H DUP (0)STACK1 ENDSCODE SEGMENTASSUME CS:CODE, DS:DA TA, SS: STACK1BEGIN: MOV AX, DA TAMOV DS, AXMOV BX, OFFSET TAB ;设置ASCII码表的基地址在BX中XOR AX, AXMOV AL, HEX ;要查找的一位十六进制数在AL中ADD BX, AX ;基址+偏移置即可计算出该十六进制数ASCII码存放地址MOV AL, [BX] ;该地址单元的内容即为要查找的ASCII码MOV ASC, AL ;存放ASCII码至ASC字节单元MOV AH, 4CHINT 21HCODE ENDSEND BEGIN4-16 试编写一程序,把X和Y中的大者存入BIG单元。
若X=Y,则把其中之一存入BIG 单元。
解:DA TA SEGMENTX DW 1028Y DW 1446BIG DW ?DA TA ENDSCODE SEGMENTASSUME CS: CODE, DS: DA TASTART: MOV AX, DA TAMOV DS, AXMOV AX, X ;取字数据X至AXMOV BX, Y;取字数据Y至BXCMP AX, BX ;比较(AX)和(BX)JGE STORE ;若(AX)≧(BX),则转STORE处执行XCHG AX, BX ;若(AX)<(BX),则(AX)(BX)STORE: MOV BIG, AX ;存结果至BIG字单元MOV AH, 4CHINT 21HCODE ENDSEND START4-17 试编制一程序,比较STRING1和STRING2所含字符是否完全相同,若相同显示“MA TCH”,反之,则显示“NO MA TCH”。
试编写该程序。
解:DA TA SEGMENTSTR1 DB ‘COMPUT’STR2 DB ‘CONPUT’MYES DB ‘MA TCH’, 0DH, 0AH, ‘$’DA TA ENDSCODE SEGMENTASSUME CS: CODE, DS: DA TASTART: MOV AX, DA TAMOV DS, AXMOV CX, 6MOV SI, OFFSET STR1 ;设置字符串STR1的地址指针SIMOV DI, OFFSET STR2 ;设置字符串STR2 的地址指针DICLDREPE CMPSB ;字符串一致时,重复比较,在两字串中找不相同字符JNE NO_SAME ;若有不相同字符,则转至NO_SAME处执行,否则顺序执行SAME: MOV DX, OFFSET MYESMOV AH, 09H ;显示字符串“MA TCH”INT 21HJMP END0NO_SAME: MOV DX,OFFSET MNOMOV AH, 09H ;显示字符串“NO MA TCH”INT 21HEND0:MOV AH, 4CHINT 21HCODE ENDSEND START4-18 设数据段中有3个变量单元A、B和C中存放有3个数,若3个数都不为0,则求出此3个数之和存入SUM单元;若有一个数为0,则将其他两个单元也清零。