微型计算机原理与接口技术(第5版)课后习题答案及问题墙

合集下载

《微型计算机原理与接口技术》课后答案

《微型计算机原理与接口技术》课后答案

《微型计算机原理与接口技术》课后答案第1章基础知识1.1 计算机中常用的计数制有哪些?解:二进制、八进制、十进制(BCD)、十六进制。

1.2 什么是机器码?什么是真值?解:把符号数值化的数码称为机器数或机器码,原来的数值叫做机器数的真值。

1.3 完成下列数制的转换。

微型计算机的基本工作原理汇编语言程序设计微型计算机接口技术建立微型计算机系统的整体概念,形成微机系统软硬件开发的初步能力。

解:(1)166,A6H(2)0.75(3)11111101.01B, FD.4H(4 ) 5B.AH, (10010001.011000100101)BCD1.4 8位和16位二进制数的原码、补码和反码可表示的数的范围分别是多少?解:原码(-127~+127)、(-32767~+32767)补码(-128~+127)、(-32768~+32767)反码(-127~+127)、(-32767~+32767)1.5 写出下列真值对应的原码和补码的形式。

(1)X= -1110011B(2)X= -71D(3)X= +1001001B解:(1)原码:11110011 补码:10001101(2)原码:11000111 补码:10111001(3)原码:01001001 补码:010010011.6 写出符号数10110101B的反码和补码。

解:11001010,110010111.7 已知X和Y的真值,求[X+Y]的补码。

(1)X=-1110111B Y=+1011010B(2)X=56D Y= -21D解:(1)11100011(2)001000111.8 已知X= -1101001B,Y= -1010110B,用补码求X-Y的值。

解:111011011.9 请写出下列字符的ASCII码。

4A3-!解:34H,41H,33H,3DH,21H1.10 若给字符4和9的ASCII码加奇校验,应是多少?解:34H,B9H1.11 上题中若加偶校验,结果如何?解:B4H,39H1.12 计算下列表达式。

微型计算机原理与接口技术(第5版)课后答案及问题墙

微型计算机原理与接口技术(第5版)课后答案及问题墙

微型计算机原理与接口技术(第5版)课后答案及问题墙第一章绪论{崔文韬问}:课后习题第一题,二进制数与十进制数转换。

{崔文韬答}:11001010B=202D,00111101B=61D,01001101B=77D,10100100B=164D。

{崔文韬问}:课后习题第二题,16进制数与十进制数转换。

{崔文韬答}:12CH=300D,0FFH=255,3A8DH=14989D,5BEH=1470D{崔文韬问}:课后习题第三题,十进制数转化为二进制数和16进制数。

{杨艺答}:25D=19H=00011001B,76D=4CH=01001100B,128D=100H=0000000100000000B,134D=106H=0000000100000110B{杨艺答}:128D=80H=10000000B,134D=86H=10000110B{崔文韬问}:课后习题第四题,写出10进制数的BCD码{杨艺答}:327D=(001100100111)BCD,1256D=(0001001101010110)BCD{杨艺答}:1256D=(0001001001010110)BCD{崔文韬问}:英文单词About的ASCII码{沙猛答}:3935H{王金鑫改}:41H,62H,6FH,75H,74H{崔文韬问}:数字95的ASCII码{王金鑫答}:39H,35H{崔文韬问}:课后习题第六题:10进制数的原码、补码、反码{杨艺答}:【+42】原=00101010B=【+42】反=【+42】补【-42】原=10101010B,【-42】反=11010101B,【-42】补=11010110B【+85】原=01010101B=【+85】反=【+85】补【-85】原=11010101B,【-85】反=10101010B,【-85】补=10101011B{崔文韬问}:机器语言或者机器码(Machine Code),汇编语言(Assemble Language),高级语言的定义{沙猛答}:机器码:计算机只认得二进制数码,计算机中的所有指令都必须用二进制表示,这种用二进制表示的指令称为机器码。

《微机原理与接口》习题及参考答案 周明德第五版

《微机原理与接口》习题及参考答案 周明德第五版

《微机原理与接口》课程习题及参考答案2012年秋季第一章习题(教材P29)作业11.1 微处理器、微型计算机和微型计算机系统三者之间有什么不同?【解】把CPU(运算器和控制器)集成在一个芯片上,即为微处理器。

微处理器加上部分存储器和外设(或外设接口)就构成了微型计算机。

微型计算机与管理、维护计算机硬件以及支持应用的软件相结合就形成微型计算机系统。

1.2 CPU在内部结构上由哪几部分组成?CPU应该具备哪些主要功能?【解】CPU主要由算术逻辑单元、指令寄存器、指令译码器、可编程逻辑阵列、寄存器组、标志寄存器等组成。

CPU主要功能是进行算术逻辑运算,以及控制计算机按照程序的规定自动运行。

1.3 微型计算机采用总线结构有什么优点?【解】采用总线结构,扩大了数据传送的灵活性,减少了连线;而且总线可以标准化,易于兼容和工业化生产。

1.4 数据总线和地址总线在结构上有什么不同之处?如果一个系统的数据和地址合用一组总线或者合用部分总线,那么要靠什么来区分地址和数据?【解】数据总线是双向的,地址总线是单向的。

采用数据和地址线复用,主要靠信号的时序来区分。

通常在读写数据时,在复用的总线上先输出地址信息,然后再传送数据。

第二章习题(教材P43)作业22.9 8086的基本程序执行寄存器是由哪些寄存器组成的?【解】8086的基本程序执行寄存器组成如下:⑴ 8个通用寄存器:可用于存放操作数和指针。

⑵ 4个段寄存器:保存段基值(或段选择子)。

⑶ 1个标志寄存器:保存状态位和控制标志位。

⑷ 1个指令指针寄存器:存放下一条要执行的指令的指针。

2.13 如何形成指令中的各种条件码?【解】指令中的条件码,即标志寄存器中的状态标志。

它们主要由算术和逻辑运算指令设置或清除。

也有设置和清除某些状态标志位的专用指令。

2.16 段寄存器CS=1200H,指令指针寄存器IP=FF00H,此时,指令的物理地址为多少?【解】指令的物理地址 = 1200H×16 + FF00H = 21F00H2.17 8086微处理器的执行部件有什么功能?由哪几部分组成?【解】8086微处理器的执行部件负责指令的执行。

《微机原理与接口》习题及参考答案 周明德第五版

《微机原理与接口》习题及参考答案 周明德第五版

《微机原理与接口》课程习题及参考答案2012年秋季第一章习题(教材P29)作业11.1 微处理器、微型计算机和微型计算机系统三者之间有什么不同?【解】把CPU(运算器和控制器)集成在一个芯片上,即为微处理器。

微处理器加上部分存储器和外设(或外设接口)就构成了微型计算机。

微型计算机与管理、维护计算机硬件以及支持应用的软件相结合就形成微型计算机系统。

1.2 CPU在内部结构上由哪几部分组成?CPU应该具备哪些主要功能?【解】CPU主要由算术逻辑单元、指令寄存器、指令译码器、可编程逻辑阵列、寄存器组、标志寄存器等组成。

CPU主要功能是进行算术逻辑运算,以及控制计算机按照程序的规定自动运行。

1.3 微型计算机采用总线结构有什么优点?【解】采用总线结构,扩大了数据传送的灵活性,减少了连线;而且总线可以标准化,易于兼容和工业化生产。

1.4 数据总线和地址总线在结构上有什么不同之处?如果一个系统的数据和地址合用一组总线或者合用部分总线,那么要靠什么来区分地址和数据?【解】数据总线是双向的,地址总线是单向的。

采用数据和地址线复用,主要靠信号的时序来区分。

通常在读写数据时,在复用的总线上先输出地址信息,然后再传送数据。

第二章习题(教材P43)作业22.9 8086的基本程序执行寄存器是由哪些寄存器组成的?【解】8086的基本程序执行寄存器组成如下:⑴ 8个通用寄存器:可用于存放操作数和指针。

⑵ 4个段寄存器:保存段基值(或段选择子)。

⑶ 1个标志寄存器:保存状态位和控制标志位。

⑷ 1个指令指针寄存器:存放下一条要执行的指令的指针。

2.13 如何形成指令中的各种条件码?【解】指令中的条件码,即标志寄存器中的状态标志。

它们主要由算术和逻辑运算指令设置或清除。

也有设置和清除某些状态标志位的专用指令。

2.16 段寄存器CS=1200H,指令指针寄存器IP=FF00H,此时,指令的物理地址为多少?【解】指令的物理地址 = 1200H×16 + FF00H = 21F00H2.17 8086微处理器的执行部件有什么功能?由哪几部分组成?【解】8086微处理器的执行部件负责指令的执行。

微机原理与接口技术课后习题有答案

微机原理与接口技术课后习题有答案

第一章解:五代,详细见书解:微型计算机:以大规模、超大规模集成电路为主要部件,以集成了计算机主要部件——控制器和运算器的微处理器为核心,所构造出的计算机系统 ;PC机:PCPersonal Computer机就是面向个人单独使用的一类微机 ;单片机:用于控制的微处理器芯片,内部除CPU外还集成了计算机的其他一些主要部件,如:ROM、RAM、定时器、并行接口、串行接口,有的芯片还集成了A/D、D/A转换电路等;数字信号处理器DSP:主要面向大流量数字信号的实时处理,在宿主系统中充当数据处理中心,在网络通信、多媒体应用等领域正得到越来越多的应用解:微机主要有存储器、I/O设备和I/O接口、CPU、系统总线、操作系统和应用软件组成,各部分功能如下:CPU:统一协调和控制系统中的各个部件系统总线:传送信息存储器:存放程序和数据I/O设备:实现微机的输入输出功能I/O接口:I/O设备与CPU的桥梁操作系统:管理系统所有的软硬件资源解:系统总线:传递信息的一组公用导线,CPU通过它们与存储器和I/O设备进行信息交换 ;好处:组态灵活、扩展方便三组信号线:数据总线、地址总线和控制总线 ;其使用特点是:在某一时刻,只能由一个总线主控设备来控制系统总线,只能有一个发送者向总线发送信号;但可以有多个设备从总线上同时获得信号;解:1用于数值计算、数据处理及信息管理方向;采用通用微机,要求有较快的工作速度、较高的运算精度、较大的内存容量和较完备的输入输出设备,为用户提供方便友好的操作界面和简便快捷的维护、扩充手段;2用于过程控制及嵌人应用方向;采用控制类微机,要求能抵抗各种干扰、适应现场的恶劣环境、确保长时间稳定地工作,要求其实时性要好、强调其体积要小、便携式应用强调其省电;解:解:I/O通道:位于CPU和设备控制器之间,其目的是承担一些原来由CPU处理的I/O任务,从而把CPU 从繁杂的I/O任务中解脱出来;由10根信号线组成A9-A0;解:BIOS:基本输入输出系统;主要功能:用来驱动和管理诸如键盘、显示器、打印机、磁盘、时钟、串行通信接口等基本的输入输出设备解:基本RAM区:640KB保留RAM区:128KB扩展ROM区:128KB基本ROM区:128KB解:1、数—用来直接表征量的大小,包括:定点数、浮点数;2、码—用来指代某个事物或事物的某种状态属性,包括:二进制、八进制、十进制、十六进制;区别:使用场合不同,详见P16.解:123解:原码反码补码+37 00100101/25H 00100101/25H 00100101/25H解:解:无符号数:70D补码有符号数:70DBCD码:46DASCII:F解:1、相加后若出现和大于9,则将和减去10后再向高位进12、若出现组间进位,则将低位加6解:详见课本16页;解:C3 40 20 00D:44Hd:64HCR:0DHLF:0AH0:30HSP:20HNUL:00H解:国标码:36 50H机内码:B6 B0H第3章解:1完整的汇编语言源程序由段组成2一个汇编语言源程序可以包含若干个代码段、数据段、附加段或堆栈段,段与段之间的顺序可随意排列3需独立运行的程序必须包含一个代码段,并指示程序执行的起始点,一个程序只有一个起始点4所有的可执行性语句必须位于某一个代码段内,说明性语句可根据需要位于任一段内5通常,程序还需要一个堆栈段开始位置:用标号指明返回DOS:利用DOS功能调用的4CH子功能来实现汇编停止:执行到一条END伪指令时,停止汇编解:段定位、段组合和段类型;解:stack segment stackdb 10240stack endsdata segmentstring db 'Hello,Assembly',0dH,0aH,‘$’data endscode segment 'code'assume cs:code,ds:data,ss:stackstart: mov dx,offset stringmov ah,9int 21hcode endsend start解:1. EXE程序程序可以有多个代码段和多个数据段,程序长度可以超过64KB通常生成EXE结构的可执行程序2. COM程序只有一个逻辑段,程序长度不超过64KB需要满足一定条件才能生成COM结构的可执行程序MASM 需要采用TINY模式解:符号定义伪指令有“等价EQU”和“等号=”:符号名 EQU 数值表达式符号名 EQU <字符串>符号名=数值表达式EQU用于数值等价时不能重复定义符号名,但“=”允许有重复赋值;例如:X= 7 ;等效于:X equ 7X= X+5 ;“X EQU X+5”是错误的解:1 al=67h2 ax=133h,dx=4h3 ax=0230h4 al=41h4 ax=7654h解:my1b db 'Personal Computer'my2b db 20my3b db 14hmy4b db 00010100bmy5w dw 20 dupmy6c = 100my7c = <'Personal Computer'>解:利用定位伪指令控制,如org,even,align解:包括逻辑地址和类型两种属性;解:;数据段org 100hvarw dw 1234h , 5678hvarb db 3 , 4buff dd 10 dupmess db 'Hello';代码段mov ax , offset varb + offset messmov ax , type buff + type mess + type vard mov ax , sizeof varw+ sizeof buff+ sizeof messmov ax , lengthof varw+ lengthof vard解:1 1000超过一个字节所能表达的最大整数2SI应为偶数3两个内存单元不能直接运算4应改为al+15条件转移指令后面应接标号,而不是变量解:mov ah,1 ;只允许输入小写字母int 21hsub al,20h ;转换为大写字母mov dl,almov ah,2int 21h ;显示解:mov bx,offset LEDtablemov al,lednumxlat解:mov ax, bufXcmp ax, bufYjae donemov ax, bufYdone: mov bufZ, ax解:.model small.stack.databufX dw -7signX db.code.startupcmp bufX,0 ;test bufX,80hjl next ;jnz nextmov signX,0jmp donenext: mov signX,-1done: .exit 0end解:mov dl,’2’mov ax,bufXcmp ax,bufYje next1dec dlnext1: cmp ax,bufZje next2dec dlnext2: mov ah,2int 21h解:;代码段mov al,numbermov bx,0 ;BX←记录为1的位数restart: cmp al,0 ;AL=0结束jz doneagain: shr al,1 ;最低位右移进入CFjc next ;为1,转移inc bx ;不为1,继续jmp againnext: push axpush bxshl bx,1 ;位数乘以2偏移地址要用2个字节单元jmp addrsbx ;间接转移:IP←table+BX;以下是各个处理程序段fun0: mov dl,'0'jmp dispfun1: mov dl,'1'jmp dispfun2: mov dl,'2'jmp dispfun3: mov dl,'3'jmp dispfun4: mov dl,'4'jmp dispfun5: mov dl,'5'jmp dispfun6: mov dl,'6'jmp dispfun7: mov dl,'7'jmp disp;disp: mov ah,2 ;显示一个字符int 21hpop bxpop axjmp restartdone: …编制程序完成12H、45H、0F3H、6AH、20H、0FEH、90H、0C8H、57H和34H等10个字节数据之和,并将结果存入字节变量SUM中不考虑溢出和进位;;.model small.stack.datab_data db 12h,45h,0f3h,6ah,20h,0feh,90h,0c8h,57h,34h ;原始数据num equ 10 ;数据个数sum db ;预留结果单元.code.startupxor si, si ;位移量清零xor al, al ;取第一个数mov cx, num ;累加次数again: add al, b_datasi ;累加inc si ;指向下一个数loop again ;如未完,继续累加mov sum, al ;完了,存结果.exit 0end求主存0040h:0开始的一个64KB物理段中共有多少个空格;.model small.codestart: mov ax,0040h ;送段地址mov ds, axmov si, 0 ;偏移地址mov cx, si ;计数循环次数xor ax, ax ;空格计数器清零again: cmp byte ptr si, 20h ;与空格的ASCII码比较jne next ;不是空格,转inc ax ;是空格,空格数加1next: inc si ;修改地址指针loop again ;cx=cx-1,如cx=0 退出循环.exit 0end start编写计算100个16位正整数之和的程序;如果和不超过16位字的范围65535,则保存其和到wordsum,如超过则显示‘overflow’;答:;数据段count equ 100parray dw count dup ;假设有100个数据wordsum dw 0msg db ‘overflow’,’$’;代码段mov cx,countmov ax,0mov bx,offset parrayagain: add ax,bxjnc nextmov dx,offset msgmov ah,9int 21h ;显示溢出信息jmp done ;然后,跳出循环体next: add bx,2loop againmov wordsum,axdone: …编程把—个16位无符号二进制数转换成为用8421BCD码表示的5位十进制数;转换算法可以是:用二进制数除以10000,商为“万位”,再用余数除以1000,得到“千位”;依次用余数除以l00、10和l,得到“百位”、“十位”和“个位”; ;.model small.stack 256.dataarray dw ;源字数据dbcd db 5 dup ;五位bcd结果,高对高低对低.code.startupmov dx, array ;取源数据余数mov bx, 10000 ;除数mov cx, 10 ;除数系数mov si, 4 ;目的数据高位位移量again: mov ax, dx ;中存放被除数mov dx, 0div bx ;除于bx,商ax,余数dxmov dbcdsi, al ;商<10,存结果push dx ;暂存余数mov ax, bx ;除数除于10mov dx,0div cx ;除于cx,商ax、余数0存在dxmov bx, ax ;bx是除数pop dxdec si ;目的数据位移量减1jnz againmov dbcd, dl ;存个位数 < 10.exit 0end解:1汇编语言中,子程序要用一对过程伪指令PROC和ENDP声明,格式如下:过程名PROC NEAR|FAR……;过程体过程名ENDP2保护用到的寄存器内容,以便子程序返回时进行相应的恢复;3改错:crazy procpish bxpush cxxor ax,axxor dx,dxagain:add a,bxadc dx,0inc bxinc bxloop againpop cxpop bx解不需调用HTOASC子程序:again: mov ah,1int 21hcmp al,1bh ;ESC的ASCII码是1bhje donemov dl,almov ah,2int 21h ;是大写字母则转换为小写字母jmp againdone: …解答:asctob procpush cxand dh,0fh ;先转换十位数shl dh,1 ;十位数乘以10采用移位指令mov ch,dhshl dh,1shl dh,1add dh,chand dl,0fh ;转换个位数add dh,dl ;十位数加个位数mov al,dh ;设置出口参数pop cxretasctob endp解:DIPASC proc ;入口参数:AL=要显示的一个16进制数push cxpush dxpush axmov cl,4 ;转换高位shr al,clcall HTOASCmov dl,al ;显示mov ah,2int 21hpop ax ;转换低位call HTOASCmov dl,al ;显示mov ah,2int 21hmov dl,’H’;显示一个字母“H”mov ah,2int 21hpop dxpop cxretDIPASC endpHTOASC proc ;将AL低4位表达的一位16进制数转换为ASCII码and al,0fhcmp al,9jbe htoasc1add al,37h ;是0AH~0FH,加37H转换为ASCII码ret ;子程序返回htoasc1: add al,30h ;是0~9,加30H转换为ASCII码ret ;子程序返回HTOASC endp解:lucase procpush bxmov bx,offset stringcmp al,0je case0cmp al,1jz case1cmp al,2jz case2jmp donecase0: cmp byte ptr bx,0je donecmp byte ptr bx,’A’jb next0cmp byte ptr bx,’Z’ja next0add byte ptr bx,20hnext0: inc bxjmp case0case1: cmp byte ptr bx,0je donecmp byte ptr bx,’a’jb next1cmp byte ptr bx,’z’ja next1sub byte ptr bx,20hnext1: inc bxjmp case1case2: cmp byte ptr bx,0je donecmp byte ptr bx,’A’jb next2cmp byte ptr bx,’Z’ja next20add byte ptr bx,20hjmp next2next20: cmp byte ptr bx,’a’jb next2cmp byte ptr bx,’z’ja next2sub byte ptr bx,20hnext2: inc bxjmp case2done: pop bxretlucase endp解:1用寄存器传递参数:最简单和常用的参数传递方法是通过寄存器,只要把参数存于约定的寄存器中就可以了由于通用寄存器个数有限,这种方法对少量数据可以直接传递数值,而对大量数据只能传递地址采用寄存器传递参数,注意带有出口参数的寄存器不能保护和恢复,带有入口参数的寄存器可以保护、也可以不保护,但最好能够保持一致2用共享变量传递参数子程序和主程序使用同一个变量名存取数据就是利用共享变量全局变量进行参数传递如果变量定义和使用不在同一个源程序中,需要利用PUBLIC、EXTREN声明如果主程序还要利用原来的变量值,则需要保护和恢复利用共享变量传递参数,子程序的通用性较差,但特别适合在多个程序段间、尤其在不同的程序模块间传递数据3用堆栈传递参数参数传递还可以通过堆栈这个临时存储区;主程序将入口参数压入堆栈,子程序从堆栈中取出参数;子程序将出口参数压入堆栈,主程序弹出堆栈取得它们采用堆栈传递参数是程式化的,它是编译程序处理参数传递、以及汇编语言与高级语言混合编程时的常规方法解:方法:主程序将入口参数压入堆栈,子程序从堆栈中取出参数;子程序将出口参数压入堆栈,主程序弹出堆栈取得它们注意:压栈与弹栈必须要一一对应;解:方法1:neg32 proc ;入口参数:=32位有符号数neg ax ;实现0-功能neg dxsbb dx,0 ;这条指令也可以用dec dx代替retneg32 endp ;出口参数:=32位有符号数的补码方法2:neg32 proc ;入口参数:=32位有符号数not ax ;实现求反加1not dxadd ax,1adc dx,0retneg32 endp ;出口参数:=32位有符号数的补码解:;数据段array db 12h,25h,0f0h,0a3h,3,68h,71h,0cah,0ffh,90h ;数组count equ $-array ;数组元素个数result db ;校验和;代码段mov bx,offset array ;BX←数组的偏移地址mov cx,count ;CX←数组的元素个数call checksum ;调用求和过程mov result,al ;处理出口参数mov ax,4c00hint 21h;计算字节校验和的通用过程;入口参数:DS:BX=数组的段地址:偏移地址,CX=元素个数;出口参数:AL=校验和;说明:除AX/BX/CX外,不影响其他寄存器checksum procxor al,al ;累加器清0sum: add al,bx ;求和inc bx ;指向下一个字节loop sumretchecksum endpend解:⑴.model small.stack.datawdata dw 34abh.code.startupmov ax,wdatacall dispa.exit 0;dispa procpush cxpush dxmov cl,4mov dl,ahshr dl,clcall dldispmov dl,ahand dl,0fhcall dldispmov dl,alshr dl,clcall dldispmov dl,aland dl,0fhcall dldisppop dxpop cxretdispa endp;dldisp procpush axor dl,30hcmp dl,39hjbe dldisp1add dl,7dldisp1: mov ah,2int 21hpop axretdldisp endpend⑵.model small.stack.datawdata dw 34abhwordtemp dw.code.startupmov ax,wdatamov wordtemp,axcall dispa.exit 0;dispa procpush cxpush dxmov cl,4mov dl,byte ptr wordtemp+1shr dl,clcall dldispmov dl,byte ptr wordtemp+1and dl,0fhcall dldispmov dl,byte ptr wordtempshr dl,clcall dldispmov dl,byte ptr wordtempand dl,0fhcall dldisppop dxpop cxretdispa endp;dldisp procpush axor dl,30hcmp dl,39hjbe dldisp1add dl,7dldisp1: mov ah,2int 21hpop axretdldisp endpend⑶.model small.stack.datawdata dw 34abh.code.startuppush wdatacall dispapop ax ;add sp,2.exit 0;dispa procpush bpmov bp,sppush axpush cxpush dxmov ax,bp+4mov cl,4mov dl,ahshr dl,clcall dldispmov dl,ahand dl,0fhcall dldispmov dl,alshr dl,clcall dldispmov dl,aland dl,0fhcall dldisppop dxpop cxpop axpop bpretdispa endp;dldisp procpush axor dl,30hcmp dl,39hjbe dldisp1add dl,7dldisp1: mov ah,2int 21hpop axretdldisp endpend解:如果利用共享变量传递函数,且变量定义和使用不在同一个源程序中,需要利用PUBLIC、EXTERN 声明;解:1宏定义由一对宏汇编伪指令MACRO和ENDM来完成,格式如下:宏名MACRO 形参表……;宏定义体ENDM宏定义之后就可以使用它,即宏调用:宏名实参表2宏调用的格式同一般指令一样:在使用宏指令的位置写下宏名,后跟实体参数;如果有多个参数,应按形参顺序填入实参,也用逗号分隔3宏展开:在汇编时,宏指令被汇编程序用对应的代码序列替代,这就是宏展开宏展开的具体过程是:当汇编程序扫描源程序遇到已有定义的宏调用时,即用相应的宏定义体完全替代源程序的宏指令,同时用位置匹配的实参对形参进行取代解:宏调用的参数通过形参、实参结合实现传递,简捷直观、灵活多变;宏汇编的一大特色是它的参数;宏定义时既可以无参数,也可以有一个或多个参数;宏调用时实参的形式也非常灵活,可以是常数、变量、存储单元、指令操作码或它们的一部分,也可以是表达式;只要宏展开后符合汇编语言的语法规则即可;解:宏:仅是源程序级的简化:宏调用在汇编时进行程序语句的展开,不需要返回;不减小目标程序,执行速度没有改变通过形参、实参结合实现参数传递,简捷直观、灵活多变子程序:还是目标程序级的简化:子程序调用在执行时由CALL指令转向、RET指令返回;形成的目标代码较短,执行速度减慢需要利用寄存器、存储单元或堆栈等传递参数选择:宏与子程序具有各自的特点,程序员应该根据具体问题选择使用那种方法;通常,当程序段较短或要求较快执行时,应选用宏;当程序段较长或为减小目标代码时,要选用子程序编写一个宏指令move doprnd,soprnd,它实现任意寻址方式的字量源操作数soprnd送到目的操作数doprnd,包括存储单元到存储单元的传送功能;答:move macro doprnd,soprndmov ax,soprndmov doprnd,axendm定义一个宏logical,用它代表4条逻辑运算指令:and/or/xor/test;注意需要利用3个形式参数,并给出一个宏调用以及对应宏展开的例子;答:logical macro lcode,dopd,sopdlcode dopd,sopdendm例如,如果使用“and ax,bx”指令,可以利用该宏定义,写出宏指令如下:logical and,ax,bx解:utol macrolocal nextcmp al,’A’;小于“A”不转换jb nextcmp al,’Z’;大于“A”不转换ja nextadd al,20h ;是大写字母则转换为小写字母next:endm定义一个宏movestr strn,dstr,sstr,它将strn个字符从一个字符区sstr传送到另一个字符区dstr解:假设它们都在数据段movestr macro strn,dstr,sstrmov cx,dsmov es,cxmov cx,strnmov di,offset dstrmov si,offset sstrcldrep movsb ;;重复传送ES:DI←DS:SIendm第五章解:主存的作用:保存正在使用的、处于活动状态的程序和数据;辅存的作用:长期保存程序文件和数据文件,在需要时将这些文件调入RAM内存并激活使用;cache的作用:提高对存储器的访问速度;虚拟存储:由容量较小的主存和容量较大的辅存构成,其目标是扩大程序员眼中的主存容量;区别:通过存储器访问指令用户可对主存进行随机访问;用户利用操作系统提供的用户命令和功能调用对辅存进行访问;在半导体存储器中,RAM指的是随机存取存储器 ,他可读可写,但断电后信息一般会丢失;而ROM指的是只读存储器 ,正常工作时只能从中读取信息,但断电后信息不会丢失 ;以EPROM芯片2764为例,其存储容量为8K×8位,共有 8 条数据线和 13 条地址线;用它组成64KB的ROM存储区共需 8 片2764芯片; 解:双译码方式使得地址译码器的输出线的数目大为减少,使得芯片设计得时候复杂度就低了;地址线A9~A4根数据线I/O4~I/O1片选CS读写WE解:假想的RAM有12根地址线、4根数据线片选端CS或CE:有效时,可以对该芯片进行读写操作,通过对系统高位地址线的译码来选中各个存储芯片输出OE:控制读操作;有效时,芯片内数据输出,该控制端对应系统的读控制线MEMRMRDC写WE:控制写操作;有效时,数据进入芯片中,该控制端对应系统的写控制线MEMWMWTC解:位片结构:每个存储单元具有一个唯一的地址,可存储1位;4116字片结构:每个存储单元具有一个唯一的地址,可存储多位;2114解:组成单元速度集成度应用SRAM 触发器快低小容量系统DRAM 极间电容慢高大容量系统NVRAM 带微型电池慢低小容量非易失掩膜ROM:信息制作在芯片中,不可更改PROM:允许一次编程,此后不可更改EPROM:用紫外光擦除,擦除后可编程;并允许用户多次擦除和编程EEPROME2PROM:采用加电方法在线进行擦除和编程,也可多次擦写Flash Memory闪存:能够快速擦写的EEPROM,但只能按块Block擦除解:位扩充——存储器芯片数据位数小于主机数据线数时,利用多个存储器芯片在数据“位”方向的扩充;地址扩充字扩充——当一个存储器芯片不能满足系统存储容量时,利用多个存储器芯片在“地址”方向的扩充组成32KB存储空间,用SRAM 21141K×4需要64个芯片;组成32KB存储空间,用DRAM 411616K×1需要16个芯片;它们都需要进行位扩充和地址扩充解:片选信号说明该存储器芯片是否被选中正常工作,设置它可以比较方便地实现多个存储器芯片组成大容量的存储空间存储器片选信号通常与CPU地址总线的高位地址线相关联,可以采用“全译码”、“部分译码”、“线选译码”方式采用全译码方式可以避免地址重复采用部分或线选译码可以节省译码硬件解:24=16解:解:解:解:解:动态随机存取存储器 DRAM 的存储单元电路动态存储单元是由 MOS 管的栅极电容 C 和门控管组成的;数据以电荷的形式存储在栅极电容上,电容上的电压高表示存储数据 1 ;电容没有储存电荷,电压为 0 ,表明存储数据 0 ;因存在漏电,使电容存储的信息不能长久保持,为防止信息丢失,就必须定时地给电容补充电荷,这种操作称为“ 刷新” 由于要不断地刷新,所以称为动态存储;方法:采用“仅行地址有效”方法刷新;刷新周期:15μs刷新次数:128解:4 256KB A19-A16 4解:访问的局部性原理:在一个较短的时间间隔内,由程序产生的地址往往集中在存储器逻辑地址空间的很小范围内;指令地址的分布本来就是连续的,再加上循环程序段和子程序段要重复执行多次;因此,对这些地址的访问就自然地具有时间上集中分布的倾向;数据分布的这种集中倾向不如指令明显,但对数组的存储和访问以及工作单元的选择都可以使存储器地址相对集中;这种对局部范围的存储器地址频繁访问,而对此范围以外的地址则访问甚少的现象,就称为程序访问的局部性;cache的作用:提高对存储器的访问速度;虚拟存储:其目标是扩大程序员眼中的主存容量;第七章解:总线:指可以由多个信息处理单元所共享的信息通道;使用特点:⑴在某一时刻,只能由一个主设备控制总线,其他主设备此时可作为从设备出现⑵在某一时刻,只能有一个设备向总线上发送数据,但可以有多个设备从总线上接收数据在各种微机总线中,根据总线连接对象的不同可将它们分为以下几类,它们是:片内总线、芯片总线、板级总线、设备总线和互连总线_;例如,ISA总线属于板级总线,USB总线属于设备总线,I2C总线属于芯片总线;总线中除电源和地线外的信号线,也可按传输信息的不同分为以下3类,即:数据总线、地址总线、控制总线 ;解:分时复用就是一个引脚在不同的时刻具有两个甚至多个作用总线复用的目的是为了减少对外引脚个数在访问存储器或外设的总线操作周期中,这些引脚在第一个时钟周期输出存储器或I/O端口的低8位地址A7 ~ A0,其他时间用于传送8位数据D7 ~ D0 解:并行总线:多维数据通过多根信号线同时进行传递;并行同步传输、并行异步传输见P174;解:见P174.解:总线的性能指标包括:总线宽度、标准传输、时钟同步/异步、总线复用、信号线数、总线控制方式总线宽度:它是指数据总线的根数, 用bit位表示,如8位、16位、32位、64位;解:D0~D7:8位双向数据总线A0~A19:20位输出地址总线ALE:地址锁存允许,每个CPU 总线周期有效IOR:I/O读,输出IOW:I/O写,输出IO CH RDY:I/O通道准备好,输入第九章解:软件延时、不可编程的硬件定时、可编程的硬件定时解:CLK时钟输入信号——在计数过程中,此引脚上每输入一个时钟信号下降沿,计数器的计数值减1GATE门控输入信号——控制计数器工作,可分成电平控制和上升沿控制两种类型OUT计数器输出信号——当一次计数过程结束计数值减为0,OUT引脚上将产生一个输出信号解:8253每个通道有 6 种工作方式可供选择;若设定某通道为方式0后,其输出引脚为低电平;当写入计数初值并进入减1计数器后通道开始计数, CLK 信号端每来一个脉冲减1计数器就减1;当计数器减为0 ,则输出引脚输出高电平,表示计数结束;8253的CLK0接的时钟,欲使OUT0产生频率为300KHz的方波信号,则8253的计数值应为 5=÷300KHz ,应选用的工作方式是 3解:1 mov al,50hmov dx,207hout dx,almov al,128 ;80hmov dx,205hout dx,al2 mov al,33hmov dx,207hout dx,almov ax,3000h ;不是3000mov dx,204hout dx,almov al,ahout dx,al3 mov al,0b4hmov dx,207hout dx,almov al,02f0hmov dx,206hout dx,almov al,ahout dx,al解:mov al,33hout 0fbh,al ;写入计数器0地址:0fbhmov al,80h ;out 0f8h,al ;写入低字节计数初值mov al,50hout 0f8h,al ;写入高字节计数初值作用:计数器0的计数初值为5080h解计数器0——每隔55ms产生一个IRQ0中断请求计数器1——每隔15μs产生一个DRAM刷新请求计数器2——控制扬声器音调解101个下降沿,还可以采用方式4GATE0接外部启动计数器的控制信号,可以选用方式1或方式5 mov dx,203hmov al,12h ;方式5为1ahout dx,almov dx,200hmov al,64hout dx,al解:计数器0的计数值:5M/1K=5000=1388H方式控制字:00100101=25H、2DH、35H、3DH十进制计数00100100=24H、2CH、34H、3CH二进制计数计数器1的计数值:1000方式控制字:01101001=69H、79H十进制计数 01101000=68H、78H二进制计数MOV DX,0FFF3HMOV AL,25H ;通道0,只写高字节,方式2,十进制OUT DX,ALMOV DX, 0FFF0HMOV AL,50H ;计数初值5000OUT DX,ALMOV DX,0FFF3HMOV AL,69H ;通道1,方式4OUT DX,ALMOV DX, 0FFF1HMOV AL,10H ;计数初值1000OUT DX,AL解:stack segment stackdw 1024 dupstack endsdata segmentfreq dw 8,,,,,,,,data endscode segment 'code'assume cs:code, ds:data,ss:stack start: mov ax,datamov ds,axagain:mov ah,01hin 21hcmp al,1BHjz nextcmp al,31Hjb next1cmp al,38Hja next1and al,0fhmov ah,00hmov si,axmov bx,offset freqmov ax,BX+SIcall speakercall speakonjmp againnext1: call speakoffjmp againnext: mov ax,4c00hint 21hspeaker procpush axmov al,0b6hout 43h,alpop axout 42h,almov al,ahout 42h,alretspeaker endp speakon procpush axin al,61hor al,03hout 61h,alpop axretspeakon endp speakoff procpush axin al,61hand al,0fchout 61h,alpop axretspeakoff endpcode endsend starts 解:1 f 1162f。

微机原理课后作业答案(第五版)

微机原理课后作业答案(第五版)

6、[+42]原=00101010B=[+42]反=[+42]补[-42]原=10101010B[-42]反=11010101B[-42]补=11010110B[+85]原=01010101B=[+85]反=[+85]补[-85]原=11010101B[-85]反=10101010B[-85]补=10101011B10、微型计算机基本结构框图微处理器通过一组总线(Bus)与存储器和I/O接口相连,根据指令的控制,选中并控制它们。

微处理器的工作:控制它与存储器或I/O设备间的数据交换;进行算术和逻辑运算等操作;判定和控制程序流向。

存储器用来存放数据和指令,其内容以二进制表示。

每个单元可存8位(1字节)二进制信息。

输入——将原始数据和程序传送到计算机。

输出——将计算机处理好的数据以各种形式(数字、字母、文字、图形、图像和声音等)送到外部。

接口电路是主机和外设间的桥梁,提供数据缓冲驱动、信号电平转换、信息转换、地址译码、定时控制等各种功能。

总线:从CPU和各I/O接口芯片的内部各功能电路的连接,到计算机系统内部的各部件间的数据传送和通信,乃至计算机主板与适配器卡的连接,以及计算机与外部设备间的连接,都要通过总线(Bus)来实现。

13、8086有20根地址线A19~A0,最大可寻址220=1048576字节单元,即1MB;80386有32根地址线,可寻址232=4GB。

8086有16根数据线,80386有32根数据线。

1、8086外部有16根数据总线,可并行传送16位数据;具有20根地址总线,能直接寻址220=1MB的内存空间;用低16位地址线访问I/O端口,可访问216=64K个I/O端口。

另外,8088只有8根数据总线2、8086 CPU由两部分组成:总线接口单元(Bus Interface Unit,BIU)BIU负责CPU与内存和I/O端口间的数据交换:BIU先从指定内存单元中取出指令,送到指令队列中排队,等待执行。

微型计算机原理与接口技术第五课后答案

微型计算机原理与接口技术第五课后答案

第五章1. 静态RAM 与动态RAM 有何区别?答:(1)静态RAM 内存储的信息只要电源存在就能一直保持,而动态RAM 的信息需要定时刷新才能保持(2)静态RAM 的集成度比较低,运行速度快,而动态RAM 的集成度高,运行相对较慢(3)静态RAM 造价成本高,动态RAM 价格便宜2. ROM 、PROM 、EPROM 、EEPROM 在功能上各有何特点?答:ROM 是只读存储器,根据写入方式的不同可以分为四类:掩膜型ROM 、PROM 、EPROM 和EEPROM 。

掩膜型ROM 中信息是厂家根据用户给定的程序或数据,对芯片图形掩膜进行两次光刻而写入的,用户对这类芯片无法进行任何修改。

PROM 出厂时,里面没有信息,用户采用一些设备可以将内容写入PROM ,一旦写入,就不能再改变了,即只允许编程一次。

EPROM 可编程固化程序,且在程序固化后可通过紫外光照擦除,以便重新固化新数据。

EEPROM 可编程固化程序,并可利用电压来擦除芯片内容,以重新编程固化新数据。

3. DRAM 的CAS 和RAS 输入的用途是什么? 答:CAS 为列地址选通信号,用于指示地址总线上的有效数据为列地址;RA 行地址选通信号,用于指示地址总线上的有效数据为列地址。

S 为4. 什么是Cache ?作用是什么?它处在微处理机中的什么位置?答:Cache 也称为高速缓存,是介于主存和CPU 之间的高速小容量存储器。

为了减少CPU 与内存之间的速度差异,提高系统性能,在慢速的DRAM 和快速CPU 之间插入一速度较快、容量较小的SRAM ,起到缓冲作用,使CPU 既可以以较快速度存取SRAM 中的数据,又不使系统成本上升过高,这就是Cache 的作用。

Cache 在微处理机中的位置如下图:5. 直接映像Cache 和成组相联Cache 的组成结构有什么不同?答:直接映象 Cache 是将主存储器中每一页大小分成和 Cache 存储器大小一致,Cache 中每一块分配一个索引字段以确定字段,这样可以通过一次地址比较即可确定是否命中,但如果频繁访问不同页号主存储器时需要做频繁的转换,降低系统性能;成组相联Cache 内部有多组直接映象的 Cache ,组间采用全关联结构,并行地起着高速缓存的作用。

微型计算机原理与接口技术课后习题答案

微型计算机原理与接口技术课后习题答案
算法是一组解决问题的步骤,包括排序算法、查找算法、图算 法等。常见的排序算法有冒泡排序、选择排序和快速排序等。
数据结构与算法的关系
数据结构与算法是相辅相成的,数据结构的选择会影响算法的 效率和实现方式,而算法的选择也会影响数据结构的组织形式 和使用方式。
04 微型计算机应用与开发
Байду номын сангаас 应用软件与开发工具
计算机工作原理
总结词
计算机的工作原理基于二进制数的运算,通过存储器、运算器和控制器等部件的协同工 作,实现数据的处理和传输。
详细描述
计算机的工作原理基于二进制数的运算,通过存储器、运算器和控制器等部件的协同工 作,实现数据的处理和传输。在计算机内部,数据以二进制数的形式表示和处理,运算 器根据控制器的指令对数据进行运算,并将结果存储回存储器中。输入输出设备则负责
第2章习题答案
选择题
答案
简答题
答案
在计算机中,数据是以什么 形式存储的?
在计算机中,数据是以二进 制形式存储的。
简述计算机中存储器的分类 及其特点。
计算机中存储器可以分为随 机存取存储器(RAM)、只 读存储器(ROM)和高速缓 存存储器(Cache)等。 RAM的特点是可以随时读写, 但断电后数据会丢失;ROM 的特点是只能读取不能写入, 但数据不会因断电而丢失; Cache的特点是读写速度快, 可以暂存部分数据,提高 CPU的访问速度。
接口
接口是连接设备和总线的桥梁,负 责数据的传输和控制。
性能指标
总线的带宽和传输速率是衡量其性 能的重要指标。
04
03 微型计算机软件技术
操作系统
操作系统定义
操作系统是控制计算机硬件与软件资源、管理计算机程序的软件, 是计算机系统的核心组成部分。

【经典】微机原理与接口技术 第五版 钱晓捷 课后答案

【经典】微机原理与接口技术 第五版 钱晓捷 课后答案
〔习题
酷睿2多核处理器。
〔习题
高级语言与具体的计算机硬件无关,其表达方式接近于所描述的问题,易为人们接受和掌握,用高级语言编写程序要比低级语言容易得多,并大大简化了程序的编制和调试,使编程效率得到大幅度的提高。而汇编语言是为了便于理解与记忆,将机器指令用助记符代替而形成的一种语言。汇编语言的语句通常与机器指令对应,因此,汇编语言与具体的计算机有关,属于低级语言。它比机器语言直观,容易理解和记忆,用汇编语言编写的程序也比机器语言易阅读、易排错。机器语言的每一条机器指令都是二进制形式的指令代码,计算机硬件可以直接识别。高级语言程序通常也需要翻译成汇编语言程序,再进一步翻译成机器语言代码。
单片机:是指通常用于控制领域的微处理器芯片,其内部除CPU外还集成了计算机的其他一些主要部件,只需配上少量的外部电路和设备,就可以构成具体的应用系统。
DSP芯片:称数字信号处理器,也是一种微控制器,其更适合处理高速的数字信号,内部集成有高速乘法器,能够进行快速乘法和加法运算。
嵌入式系统:利用微控制器、数字信号处理器或通用微处理器,结合具体应用构成的控制系统。
〔习题
为了更好地进行编程实践,请进入Windows操作系统下的控制台环境(或MS-DOS模拟环境),练习常用命令。
计算机由存储器、运算器、控制器、输入设备和输出设备五大基本部件组成,并规定了5部分的基本功能。
〔习题
最上层是用户层。
第5层是高级语言层。
第4层是汇编语言层。
第3层是操作系统层。
第2层是机器语言层。
第1层是控制层。
第0层是数字电路层。
普通计算机用户和软件人员对计算机系统的认识并不一样。普通计算机用户看到的计算机,也就是我们最熟悉的计算机,属于用户层,而软件人员看到的属于高级语言层或是汇编语言层。

微型计算机原理(第五版)课后习题答案

微型计算机原理(第五版)课后习题答案

7.设有3个字变量的变量名及其内容如下: VAR1 3C46H VAR2 F678H 0A56H:000BH VAR3 0059H P127 试设计一个数据段定义这3个变量及其地址(包括段地址和偏移地址) 表变量ADDRTABL。 0A56H:0005H 46H VAR1 解:DATA SEGMENT 0A56H:0006H 3CH VAR1 DW 3C46H 0A56H:0007H 78H VAR2 VAR2 DW F678H 0A56H:0008H F6H VAR3 DW 0059H 0A56H:0009H 59H VAR3 ADDRTABL DD VAR1 0A56H:000AH 00H DD VAR2 DD VAR3 DATA ENDS
210=1K 24=16
(2)需要64个RAM芯片,64个芯片组,13根片内地址线、6根片选地址线。 213=8K 26=64
第六章
7、某微机系统的RAM存储器由4个模块组成,每个模块的容量为128 KB,若 4个模块的地址连续,起始地址为10000H,则每个模块的首末地址是什么? 解:末地址-首地址+1=容量 末地址=首地址+容量-1 =10000H+217-1 0001,0000,0000,0000,0000B +0010,0000,0000,0000,0000B 0011,0000,0000,0000,0000B -0000,0000,0000,0000,0001B 0010,1111,1111,1111,1111B =2FFFFH 则4个模块的首末地址分别为:10000H~2FFFFH、30000H~4FFFFH、 50000H~6FFFFH、70000H~8FFFFH
第五章 1、已知8086 CPU中当前段寄存器的基址(DS) = 021FH,(ES) = 0A32H, (CS) = 234EH,则上述各段在存储器空间中物理地址的首地址号及末地 址号是什么? 解:各段首地址为: 数据段:(DS)×10H+0000H=021F0H 附加段:(ES)×10H+0000H=0A320H 代码段:(CS)×10H+0000H=234E0H 各段末地址为: 数据段:(DS)×10H+0FFFFH=121EFH 附加段:(ES)×10H+0FFFFH=1A31FH 代码段:(CS)×10H+0FFFFH=334DFH

微机原理与接口技术课后习题与参考答案

微机原理与接口技术课后习题与参考答案

微机原理与接口技术课后习题与参考答案-标准化文件发布号:(9456-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII第一章课后习题1.1 把下列十进制数转换成二进制数、八进制数、十六进制数。

① 16.25 ② 35.75 ③ 123.875 ④ 97/1281.2 把下列二进制数转换成十进制数。

① 10101.01 ② 11001.0011 ③ 111.01 ④ 1010.11.3 把下列八进制数转换成十进制数和二进制数。

① 756.07 ② 63.73 ③ 35.6 ④ 323.451.4 把下列十六进制数转换成十进制数。

① A7.8 ② 9AD.BD ③ B7C.8D ④ 1EC1.5 求下列带符号十进制数的8位补码。

① +127 ② -1 ③ -0 ④ -1281.6 求下列带符号十进制数的16位补码。

① +355 ② -11.7 计算机分那几类各有什么特点1.8 简述微处理器、微计算机及微计算机系统三个术语的内涵。

1.9 80X86微处理器有几代各代的名称是什么1.10 你知道现在的微型机可以配备哪些外部设备?1.11 微型机的运算速度与CPU的工作频率有关吗?1.12 字长与计算机的什么性能有关?习题一参考答案1.1 ① 16.25D=10000.01B=20.2Q=10.4H② 35.75D=100011.11B=43.6Q=23.CH③ 123.875D=1111011.111B=173.7Q=7B.EH④ 97/128D=64/123+32/128+1/128=0.1100001B=0.604Q=0.C2H1.2 ① 10101.01B=21.25D ② 11001.0011B=25.1875D③ 111.01B=7.25D ④ 1010.1B=10.5D1.3 ① 756.07Q=111101110.000111B=494.109D ②63.73Q=110011.111011B=51.922D③ 35.6Q=11101.110B=29.75D ④ 323.45Q=11010011.100101B=211.578D1.4 ① A7.8H=167.5D ② 9AD.BDH=2477.738D③ B7C.8D=2940.551D ④ 1ECH=492D1.5 ① [+127]补=01111111 ② [-1] 补= 11111111③ [-0] 补=00000000 ④[-128] 补=100000001.6 ① [+355] 补= 0000000101100011 ② [-1] 补= 1111 1111 1111 11111.7 答:传统上分为三类:大型主机、小型机、微型机。

微型计算机原理与接口技术第五版周荷琴课后答案

微型计算机原理与接口技术第五版周荷琴课后答案

微型计算机原理与接口技术第五版周荷琴课后答案第一章:计算机系统概述1.1 计算机系统基本组成•核心包括 CPU、内存和 I/O 设备。

CPU 是计算机的中央处理器,负责执行指令,控制各部分设备的操作。

内存存储数据和程序指令。

I/O 设备是计算机与外部世界进行信息交换的重要途径。

1.2 计算机的基本层次结构•计算机系统的基本层次结构分为硬件体系结构和软件体系结构。

硬件体系结构定义了计算机中硬件组件的功能、特性、接口和互连方式。

软件体系结构定义了计算机的软件组件及其相互关系。

1.3 计算机的工作过程•计算机工作过程主要包括取指令、分析指令、获取操作数、执行指令、写回结果等几个阶段。

具体过程为:取指令:从内存中读取指令;分析指令:解码指令确定要执行的操作;获取操作数:从内存或寄存器中读取操作数;执行指令:进行具体的运算或操作;写回结果:将运算结果写入内存或寄存器。

1.4 计算机性能指标•计算机的性能指标包括运算速度、存储容量、传输速率、可靠性和可用性等方面。

运算速度衡量了计算机执行指令的快慢;存储容量表示计算机可以存储的数据量;传输速率表示从一个设备向另一个设备传输数据的速度;可靠性表示计算机的故障率;可用性表示计算机在给定时间内正常工作的比例。

第二章:计算机的数制与编码2.1 数制与编码的基本概念•数制是用于表示数值的方法,常见的有十进制、二进制、八进制和十六进制等。

编码是指将字符、符号等信息转换成计算机可以处理的二进制形式。

2.2 二进制与十进制的转换•将十进制数转换成二进制数时,可以采用除2取余的方法。

将二进制数转换成十进制数时,可以根据二进制位上的权值相加的原理进行计算。

2.3 BCD码与ASCII码•BCD码是Binary-Coded Decimal的缩写,用4位二进制码表示一个十进制数的一位。

ASCII码是一种字符编码,将每个字符映射成一个唯一的二进制数。

2.4 奇偶校验码•奇偶校验码是一种错误检测码,用于检测数据传输过程中出现的位错误。

微型计算机原理与接口技术第五版周荷琴课后答案

微型计算机原理与接口技术第五版周荷琴课后答案

微型计算机原理与接口技术第五版周荷琴课后答案【篇一:《微型计算机原理与接口技术》周荷琴_吴秀清(第三版)课后习题答案】现在已演化为以存储器为中心的结构。

2. 微处理器,微型计算机,微型计算机系统有什么联系与区别?答:微处理器是微型计算机系统的核心,也称为cpu(中央处理器)。

主要完成:①从存储器中取指令,指令译码;②简单的算术逻辑运算;③在处理器和存储器或者i/o 之间传送数据;④程序流向控制等。

微型计算机由微处理器、存储器、输入/输出接口电路和系统总线组成。

以微型计算机为主体,配上外部输入/输出设备及系统软件就构成了微型计算机系统。

三者关系如下图:3. 微处理器有哪些主要部件组成?其功能是什么?答:微处理器是一个中央处理器,由算术逻辑部件alu、累加器和寄存器组、指令指针寄存器ip、段寄存器、标志寄存器、时序和控制逻辑部件、内部总线等组成。

算术逻辑部件alu 主要完成算术运算及逻辑运算。

累加器和寄存器组包括数据寄存器和变址及指针寄存器,用来存放参加运算的数据、中间结果或地址。

指令指针寄存器ip 存放要执行的下一条指令的偏移地址,顺序执行指令时,每取一条指令增加相应计数。

段寄存器存放存储单元的段地址,与偏移地址组成20 位物理地址用来对存储器寻址。

标志寄存器flags 存放算术与逻辑运算结果的状态。

时序和控制逻辑部件负责对整机的控制:包括从存储器中取指令,对指令进行译码和分析,发出相应的控制信号和时序,将控制信号和时序送到微型计算机的相应部件,使cpu内部及外部协调工作。

内部总线用于微处理器内部各部件之间进行数据传输的通道。

4. 画一个计算机系统的方框图,简述各部分主要功能。

答:计算机系统由硬件(hardware)和软件(software)两大部分组成。

硬件是指物理上存在的各种设备,如显示器、机箱、键盘、鼠标、硬盘和打印机等,是计算机进行工作的物质基础。

软件是指在硬件系统上运行的各种程序、数据及有关资料。

微型计算机原理与接口技术:微型计算机原理与接口技术-课后习题答案

微型计算机原理与接口技术:微型计算机原理与接口技术-课后习题答案

15:27:28
4
微处理器主要部件作用: ➢ 算术逻辑部件主要完成算术运算及逻辑运算。
➢ 通用寄存器组用来存放参加运算的数据、中间结果 或地址。
➢ 程序计数器指向要执行的下一条指令,顺序执行指 令时,每取一个指令字节,程序计数器加1。
➢ 控制逻辑部件负责对整机的控制,包括从存储器中 取指令,对指令进行译码和分析,确定指令的操作 及操作相应的控制信号和时序,送到微型计算机的 其他部件,使CPU内部及外部协调工作。
12000H 21000H 25000H 3F069H
15:27:28
15
11.实模式下,求下列寄存器组合所寻址的存 储单元地址:
➢ a) DS=1000H,DI=2000H 12000H ➢ b) SS=2300H,BP=3200H 26200H ➢ c) DS=A000H,BX=1000H A1000H ➢ d) SS=2900H,SP=3A00H 2CA00H
15:27:28
2
➢ 微型计算机由CPU,存储器,输入/输出接口电路 和系统总线组成。它已具有计算功能,能独立执 行程序,但若没有输入/输出设备,数据及程序不 能输入,运算结果无法显示或输出,仍不能正常 工作。
➢ 以微型计算机为主体,配上外部输入/输出设备及
系统软件就构成了微型计算机系统。没有配置软
物理地址=ES×10H+BX=20000H+0100H=20100H
(5)MOV AX, [SI]
寄存器间接寻址,100A0H
物理地址=DS×10H+SI=10000H+00A0H=100A0H
2023年11月7日星期二
(6)MOV AX, [BX+10H] 寄存器相对寻址,10110H

【经典】微机原理与接口技术 第五版 钱晓捷 课后答案

【经典】微机原理与接口技术 第五版 钱晓捷 课后答案
〔习题
标志:用于反映指令执行结果或控制指令执行形式的一个或多个二进制数位。例如,有些指令执行后会影响有关标志位;有些指令的执行要利用相关标志。
状态标志:用来记录程序运行结果的状态信息。
控制标志:DF标志,控制字符串操作的地址方向。
系统标志:用于控制处理器执行指令的方式。
状态标志在标志寄存器EFLAGS中的位置和含义如下:
保护方式:具有强大的段页式存储管理和特权与保护能力,使用全部32条地址总线,可寻址4GB物理存储器。保护方式通过描述符实现分段存储管理,每个逻辑段可达4GB。处理器工作在保护方式时,可以使用平展或段式存储模型。
虚拟8086方式:在保护方式下运行的类似实方式的运行环境,只能在1MB存储空间下使用“ 16位段”。处理器工作在虚拟8086方式时,只能使用实地址存储模型。
存储器:存储器是存放程序和数据的部件。
外部设备:外部设备是指可与微机进行交互的输入(Input)设备和输出(Output)设备,也称I/O设备。I/O设备通过I/O接口与主机连接。
总线:互连各个部件的共用通道,主要含数据总线、地址总线和控制总线信号。
〔习题
通用微处理器:适合较广的应用领域的微处理器,例如装在PC机、笔记本电脑、工作站、服务器上的微处理器。
计算机由存储器、运算器、控制器、输入设备和输出设备五大基本部件组成,并规定了5部分的基本功能。
〔习题
最上层是用户层。
第5层是高级语言层。
第4层是汇编语言层。
第3层是操作系统层。
第2层是机器语言层。
第1层是控制层。
第0层是数字电路层。
普通计算机用户和软件人员对计算机系统的认识并不一样。普通计算机用户看到的计算机,也就是我们最熟悉的计算机,属于用户层,而软件人员看到的属于高级语言层或是汇编语言层。

微型计算机原理与接口技术第五版课后答案

微型计算机原理与接口技术第五版课后答案

微型计算机原理与接口技术第五版课后答案【篇一:《微型计算机原理与接口技术》(第三版)习题答案】(1)用二进制数表示数据和指令;(2)指令和数据存储在内部存储器中,按顺序自动依次执行指令;(3)由运算器、控制器、存储器、输入设备和输出设备组成基本硬件系统;(4)由控制器来控制程序和数据的存取及程序的执行;(5)以运算器为核心。

1.3 微型计算机的特点和主要性能指标有那些?【解答】除具有运算速度快、计算精度高、有记忆能力和逻辑判断能力、可自动连续工作等基本特点以外,还具有功能强、可靠性高、价格低廉、结构灵活、适应性强、体积小、重量轻、功耗低、使用和维护方便等。

微型计算机的性能指标与系统结构、指令系统、硬件组成、外部设备以及软件配备等有关。

常用的微型计算机性能指标主要有:字长、主频、内存容量、指令数、基本指令执行时间、可靠性、兼容性、性能价格比等。

1. 微机系统的硬件由哪几部分组成?答:三部分:微型计算机(微处理器,存储器,i/0接口,系统总线),外围设备,电源。

2. 什么是微机的总线,分为哪三组?答:是传递信息的一组公用导线。

分三组:地址总线,数据总线,控制总线。

3. 什么是总线,微机中的总线通常分为哪几类?答:是一组信号线的集合,是一种在各模块间传送信息的公共通路;有四类,片内总线,微处理器总线,系统总线,外总线。

4. 8086/8088cpu的内部结构分为哪两大模块,各自的主要功能是什么?答:总线接口部件(biu)功能:根据执行单元eu的请求完成cpu与存储器或io设备之间的数据传送。

执行部件(eu),作用:从指令对列中取出指令,对指令进行译码,发出相应的传送数据或算术的控制信号接受由总线接口部件传送来的数据或把数据传送到总线接口部件进行算术运算。

5. 8086指令队列的作用是什么?答:作用是:在执行指令的同时从内存中取了一条指令或下几条指令,取来的指令放在指令队列中这样它就不需要象以往的计算机那样让cpu轮番进行取指和执行的工作,从而提高cpu的利用率。

《微型计算机原理与接口技术》第5版第一章 课后习题

《微型计算机原理与接口技术》第5版第一章 课后习题

第1章序论
5、将英文单词About和数字95转换成ASCII码字符串。

About:41626F7574H95:3935H
6、求出下列10进制数的原码,反码、补码。

(1)+4200101010
(2)-42101010101101010111010110
(3)+8501010101
(4)-85110101011010101010101011
7、冯诺依曼结构的计算机有哪几部分组成?大致是如何工作的?
存储器、运算器、控制器、输入设备、输出设备
9、什么是机器语言、汇编语言和高级语言?
机器码:二进制形式表示的指令;
汇编语言:用助记符来代替二进制形式的机器码;
高级语言:是一种接近于人们使用习惯的程序设计语言。

10、画出微型计算机的基本结构框图,说明各部分的主要功能是什么?P11
微型计算机:主要由微型处理器、存储器、I/O接口、I/O设备和总线等组成.
11、微型计算机系统由哪些部分组成?
微型计算机的硬件和软件合在一起统称为微型计算机系统。

微型计算机的硬件:CPU、存储器、I/O接口、总线、电源及辅助设备
微型计算机的软件:系统软件、应用软件、程序设计语言。

微机原理与接口技术课后习题参考答案

微机原理与接口技术课后习题参考答案

《微机原理与接口技术》李华贵主编课后习题参考答案第1章(1.6 习题)1.简述名词的概念:微处理器、微型计算机、微型计算机系统。

答:(1)微处理器:微处理器(Microprocessor)简称µP或MP,或CPU。

CPU 是采用大规模和超大规模集成电路技术将算术逻辑部件ALU(Arithmetic Logic Unit)、控制部件CU(Control Unit)和寄存器组R(Registers)等三个基本部分以及内部总线集成在一块半导体芯片上构成的电子器件。

(2)微型计算机:微型计算机(Microcomputer)是指以微处理器为核心,配上由大规模集成电路制作的存储器、输入/输出接口电路及系统总线等所组成的计算机,简称微机。

(3)微型计算机系统:微型计算机系统由硬件与软件两大部分组成,分别称为硬件(Hardware)系统与软件(Software)系统。

其中,硬件(Hardware)系统由CPU、内存储器、各类I/O接口、相应的I/O设备以及连接各部件的地址总线、数据总线、控制总线等组成。

软件(Software)系统:计算机软件(Software)是指为运行、维护、管理、应用计算机所编制的程序及程序运行所需要的数据文档资料的总和。

一般把软件划分为系统软件和应用软件。

其中系统软件为计算机使用提供最基本的功能,但是并不针对某一特定应用领域。

而应用软件则恰好相反,不同的应用软件根据用户和所服务的领域提供不同的功能。

2.简述名词的概念:指令寄存器、地址寄存器、标志寄存器。

答:(1)指令寄存器:指令寄存器(Instruction Register,IR)用来保存计算机当前正在执行或即将执行的指令。

当一条指令被执行时,首先,CPU从内存取出指令的操作码,并存入IR中,以便指令译码器进行译码分析。

(2)地址寄存器:地址寄存器(Address Register,AR)被动地接受IP传送给它的地址值(二进制地址),AR的作用是保持IP送来的地址,并且以并行方式连接输出到CPU的地址引脚上,以便CPU访问指定的内存单元。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

微型计算机原理与接口技术(第5 版)课后答案及问题墙第一章绪论{崔文韬问}:课后习题第一题,二进制数与十进制数转换。

{崔文韬答}: 11001010B=202D,00111101B=61D,01001101B=77D,10100100B=164D。

{崔文韬问}:课后习题第二题,16 进制数与十进制数转换。

{崔文韬答}:12CH=300D,0FFH=255,3A8DH=14989D,5BEH=1470D{崔文韬问}:课后习题第三题,十进制数转化为二进制数和16 进制数。

{杨艺答}:25D=19H=00011001B,76D=4CH=01001100B,128D=100H=00000001 00000000B,134D=106H=00000001 00000110B{ 杨艺答}:128D=80H=10000000B,134D=86H=10000110B{崔文韬问}:课后习题第四题,写出10 进制数的BCD 码{杨艺答}:327D=(0011 0010 0111)BCD,1256D=(0001 0011 0101 0110)BCD{杨艺答}:1256D=(0001 0010 0101 0110)BCD{崔文韬问}:英文单词About 的ASCII 码{沙猛答}:3935H{王金鑫改}:41H,62H,6FH,75H,74H{崔文韬问}:数字95 的ASCII 码{王金鑫答}:39H,35H{崔文韬问}:课后习题第六题:10 进制数的原码、补码、反码{杨艺答}:【+42】原=00101010B=【+42】反=【+42】补【-42】原=10101010B,【-42】反=11010101B,【-42】补=11010110B【+85】原=01010101B=【+85】反=【+85】补【-85】原=11010101B,【-85】反=10101010B,【-85】补=10101011B{崔文韬问}:机器语言或者机器码(Machine Code),汇编语言(Assemble Language),高级语言的定义{沙猛答}:机器码:计算机只认得二进制数码,计算机中的所有指令都必须用二进制表示,这种用二进制表示的指令称为机器码。

汇编语言:用助记符来代替二进制的机器码的符号语言高级语言:相对于机器语言,接近人们使用习惯的程序设计语言。

{崔文韬问}:课后习题第10 题{崔文韬答}:参考课本16 页图1.4{崔文韬问}:课后习题第11 题{崔文韬答}:参考课本11 页图1.2{杨艺答}:微处理器、存储器、I/O 接口,I/O 设备和总线。

6{崔文韬问}:课后习题第12 题{崔文韬答}:ALU:Arithmetic Logic Unit,CPU:Central Processing Unit,PC:Personal Computer,DOS:Disk Operation System{崔文韬问}:8086 和80386 各有多少根地址线,可直接寻址的内存空间是多少,他们的数据线各有多少根?{杨艺答}:8086 有20 根地址线A19~A0,可直接寻址的内存空间是2^20 个字节单元,有16 根数据线;80386 有32 根地址线,可直接寻址的内存空间是2^32 个字节单元,有32 根数据线。

{崔文韬问}:什么是二进制编码,常用的二进制编码有哪两种?{杨艺答}:采用若干特定的二进制码的组合来表示各种数字、英文字母、运算符号等的编码方式叫做二进制编码,常见的二进制编码有BCD 码和ASCII 码两种。

{崔文韬问}:解释位,字节,字,字长的含义?{沙猛答}:位bit:计算机中二进制数的每一位0 或1 是组成二进制信息的最小单位,称为位。

字节byte:8 个二进制信息组成的一个单位称为一个字节,1 Byte=8 Bits。

字word:由16 位二进制数即两个字节组成。

字长word length:决定计算机内部一次可以处理的二进制代码位数。

{刘玉年问}:存在计算机中的数都是以有符号数存储的,还是以无符号数存储的呢?{崔文韬答}:刘玉年同学,你能先自己尝试回答一下这个问题,或者说你自己的理解是什么?{刘玉年答}:应该是两者都不是吧,因为在运算的时候仅仅就是二进制数的运算,而判断结果的意义(是什么样的数)是通过标志为判断的。

{崔文韬答}:两者都不是,存储器中数据的含义是完全由编程人员决定的。

计算机只接收二进制数据,即01 序列。

至于原始数据是什么以及如何转化为二进制数据,都是由编程人员决定的。

计算机对所存储数据按照二进制计算法则进行运算,为适应有符号数和无符号数运算两种情况,通过设置标志位来计算结果在两种情况下的意义。

第二章8086CPU{崔文韬问}:8086/8088 可直接寻址多少内存(字节)单元?多少IO 端口?外部数据线各有多少?{董国福答}:8086/8088 可直接寻址1MB 内存空间;可以访问64K 个I/O 端口;但外部数据总线8086 有16 根,8088 有8 根。

{崔文韬问}:8086CPU 内部由那两部分组成?{俞楠答}:8086CPU 由总线接口单元(BIU)和指令执行单元(EU)两部分组成。

{崔文韬问}:EU,BIU,AX,BX,CX,DX,DS,CS,ES,SS,SP,BP,DI,SI 全称?{ 董国福答}:EU:Execution UnitBIU:Bus Interface UnitAX:AccumulatorBX:BaseCX:Count DX:Data DS:DataSegmentCS:Code SegmentES:Extra SegmentSS:Stack SegmentSP:Stack PointerBP:Base PointerDI:Destination IndexSI:Source Index{崔文韬问}:8086CPU 内部包含哪些寄存器?各有什么用途?{俞楠答}:1.数据寄存器:用来存放16 位数据信息或地址信息。

2.地址指针和变址寄存器:SP,BP,SI,DI 这组地址指针个变址寄存器加上基址寄存器BX,可与段寄存器配合使用,一起构成内存的物理地址。

(数据寄存器和地址指针和变址寄存器则被称为通用寄存器。

)(段基地址和段内偏移地址Offset 组合起来就可形成20 位物理地址)5.标志寄存器:6 个状态标志CF,PF,AF,ZF,SF,OF 用来表示指令执行后的结果或状态特征,根据这些特征,由转移指令控制程序的走向。

3 个控制标志,TF,IF,DF,可以根据需要用程序设置或清除。

{崔文韬问}:带符号数10110100B 和11000111B 相加,各标志位为多少?哪些标志位有意义?如果作为无符号数相加,各标志位为多少?哪些标志位有意义?{崔文韬答}:二进制数所有位都参与运算10110100+ 110001111 01111011OF SF ZF AFPF CF1 0 0 0 1 1程序员将该数看做有符号数,因此SF,OF,ZF,PF 有意义。

如果将该数看做无符号数,计算过程一样,标志位结果相同,CF,ZF,PF 有意义。

利用debug 程序验证结果:运行dosbox,输入debug,r 命令查看初始寄存器数值,a 命令输入汇编指令,t 命令执行查看结果,过程如下图所示:debug 中,flags 中的NV,UP 等表示什么含义,请查看百度网盘中共享的debug 教程,下图为该教程中的截图:{崔文韬问}:课后习题第七题,段地址:偏移地址与物理地址的关系(原理在书中31-32 页){俞楠答}:20 位的物理地址=段基地址*16+16 位的偏移量1200H*16+3500H=15500H(1200H*16 等同于把1200H 左移一位地址变成12000H,下面同理)FF00H*16+0458H=FF458H3A60H*16+0100H=3A700H{崔文韬问}:CS:IP=3456:0210,CPU 要执行的下条指令的物理地址为多少?{俞楠答}:3456H*16+0210H=33770H曲洋答:34770H{崔文韬问}:课后习题十一题,SS:SP=2000,0300H,堆栈在内存当中的物理地址范围是多少?执行两条PUSH 指令后,SS:SP=?再执行一条PUSH 指令后,SS:SP=?{俞楠答}:物理地址范围:(2000H*16+0) : (2000H*16+(0300H))=20000H : 20300H执行两条PUSH 指令后:SS : SP=2000H : (0300H-4)=2000H : 02FCH再执行一条PUSH 指令后,SS : SP=2000H : (02FC-2)=2000H : 02FAH{刘瑾改}:堆栈在内存当中的物理地址范围为:2000:0000H~2000:(0300H-1){崔文韬问}:课后习题十二题,从存储单元2000H 开始存放的字节数据为:3AH,28H,56H,4FH,试画出示意图说明,从2000H 和2001H 单元开始取出一个字数据各要进行几次操作,取出的数据分别等于多少?{俞楠答}:从2000H 中取出一个字数据要进行 一次操作,取出字为283A。

从2001H 中取出一个字数据要进行 两次操作,取出字为5628。

{罗小东补充}:如下表,如果从2000H 取出一个字数据,则执行一次操作直接取出一个字283AH如果从2001H 开始取出一个字数据,则需进行两次操作,分别是——先从2000H 单元开始读取一个字283AH,取得低字节28H,舍弃3AH;再从2002H 单元读取一个字数据,4F56H,取得其高字节56H,然后就可以得到2001H 单元开始取出的一个自数据——5628H。

原理就是:8086CPU 对存储器进行存取操作时,都是从偶地址体开始的。

2000 3A2001 282002 562003 4F{罗小东问}:一个含有16 个字节数据的变量,它的逻辑地址为1000:0100H,那么该变量的最后一个字节数据的物理地址是H?(可不可以答案再加点简单分析呀){崔文韬问}:设定SS:SP 后形成的堆栈占据一定的物理地址范围,是否可无限次执行PUSH 或者POP 指令?为什么?{苏子宇答}:堆栈有一定的容量,无限次执行push 会超出范围,导致覆盖设定的堆栈空间外的数据,产生栈顶越界现象。

堆栈空间是程序员向系统请,系统开辟的安全数据空间,空间外的数据可能具有其他用途,任意改动可能引发错误。

8086CPU 不提供检测栈顶是否越界的机制。

编程时要注意栈顶越界问题,根据可能用到的最大栈空间来安排堆栈大小,防止入栈的数据导致栈顶越界。

{刘玉年问}:8086 有20 根地址总线,可寻址的内存空间是1M,是不是就说8086 里面的内存空间就只有1M 呢?如果不是这样的,那么多余的地址空间又该如何寻址呢?{崔文韬答}:8086 的内存寻址空间真的只有1M,这1M 空间分配给内存使用(包含显存,主内存,BIOS 的ROM)。

相关文档
最新文档