微机原理第三章习题及答案

合集下载

微机原理及应用(陈继红、徐晨)课后习题答案

微机原理及应用(陈继红、徐晨)课后习题答案

微机原理及应⽤(陈继红、徐晨)课后习题答案微机原理及应⽤(陈继红、徐晨)课后习题答案第三章8086/8088指令系统和寻址⽅式习题答案(部分)3.1总结计算机中⼗进制、⼆进制、⼋进制及⼗六进制数的书写形式。

123D、0AFH、77Q、1001110B分别表⽰什么计数制的数?答案:123D、0AFH、77Q、1001110B分别表⽰⼗进制、⼗六进制、⼋进制、⼆进制。

3.2字长为8位、16位⼆进制数的原码、补码表⽰的最⼤数和最⼩数分别是什么?答案:8位原码表⽰的最⼤数:(27-1)、8位补码表⽰的最⼤数:(27-1)、8位原码表⽰的最⼩数:-(27-1)、8位补码表⽰的最⼩数-27。

16最⼩数:-215。

3.3答案:7DH。

(2)255(3)7248H。

(4)509013E2H。

3.4答案:240D0F0H。

128D80H。

(3)11111111⼗进制数:255D;⼗六进制数:0FFH。

(4)01010101⼗进制数:85D;⼗六进制数:55H。

3.5把下列⽆符号⼗六进制数分别转换为⼗进制数和⼆进制数。

(1)FF(2)ABCD(3)123(4)FFFF答案:(1)FF⼗进制数:255D;⼆进制数;11111111B。

1010101111001101B。

(3)123⼗进制数:291D;⼆进制数;000100100011B。

(4)FFFF⼗进制数:65535D;⼆进制数;1111111111111111B。

3.6分别⽤8位⼆进制数和16位⼆进制数写出下列⼗进制数的原码和补码。

(1)16(2)-16(3)+0(4)-0(5)127(6)-128(7)121(8)-9 答案:(1)16800010000(2)-16800010000(3)+0800000000(4)-0800000000(5)127801111111(6)-128810000000(7)1218:01111001;16位⼆进制数原码:0000000001111001补码:0000000001111001。

微型计算机原理作业第三章 习题与思考题

微型计算机原理作业第三章 习题与思考题

第三章习题与思考题典型例题解析例3-1高速缓冲存储器(Cache)的存取速度()。

A.比内存慢,比外存快B.比内存慢,比内部寄存器快C. 比内存快,比内部寄存器慢D. 比内存快,比内部寄存器快例3-2 在存储器连线时,选片控制采用()方式时,不仅存在()问题,而且所分配的地址也是不同的。

A.全译码B.线选法C.地址重迭D.地址浮动例3-3 某计算机的主存为3KB,则内存地址寄存器需()位就足够了。

A.10 B.11 C.12 D.13例3-4 在微机中,CPU访问各类存储器的频率由高到低的次序为()。

A.高速缓存、内存、磁盘B.内存、磁盘、高速缓存C.磁盘、内存、高速缓存D.磁盘、高速缓存、内存答案:A分析:内存存放当前运行的程序和数据,访问频率高于磁盘,C和D不合题意;在采用Cache和内存的存储体系结构中,CPU总是先访问Cache,只有未命中时才访问内存,B也不对。

所以选A。

例3-5 常用的虚拟存储器寻址系统由()两级存储器组成。

A.主存一外存B.Cache一主存C.Cache—外存D.Cache——Cache答案:A分析:虚拟存储器由存储器管理机制以及一个大容量的外存支持。

它是在存储体系层次结构基础上,通过存储器管理部件MMU,在外存和主存之间进行虚拟地址和实地址间的变换的。

例3-6 下面的说法中,正确的是()。

A.EPROM是不能改写的B.EPROM是可改写的,所以也是一种读写存储器C.EPROM只能改写一次D.EPROM是可改写的,但它不能作为读写存储器答案:D分析:EPROM是紫外线可擦写可编程ROM,可反复多次改写,所以A和C不正确;EPROM的编程需外加编程电压,不能在线随机改写,因而EPROM不是随机读写存储器,所以B也不正确。

例3-7 一个具有24根地址线的微机系统,装有16KBROM、480KB RAM和100MB的硬盘,说明其内存容量为()。

A.496KB B.16MB C.100.496MB D. 480KB答案:A分析:内存由ROM和RAM组成,答案C含硬盘容量不合题意;存储器总容量与实际装机容量是不同概念,此题答案B、D也不合题意。

16。32位微机原理、汇编语言及接口技术(第二版)第三章课后习题答案。

16。32位微机原理、汇编语言及接口技术(第二版)第三章课后习题答案。

第3章3.1:汇编语言有什么特点解:汇编语言是一种以处理器指令系统为基础的低级程序设计语言,它采用助记符表达指令操作码,采用标识符号表示指令操作数,可以直接、有效地控制计算机硬件,因而容易创建代码序列短小、运行快速的可执行程序3.2编写汇编语言源程序时,一般的组成原则是什么?解:(1)完整的汇编语言源程序由段组成(2)一个汇编语言源程序可以包含若干个代码段、数据段、附加段或堆栈段,段与段之间的顺序可随意排列(3)需独立运行的程序必须包含一个代码段,并指示程序执行的起始点,一个程序只有一个起始点(4)所有的可执行性语句必须位于某一个代码段内,说明性语句可根据需要位于任一段内(5)通常,程序还需要一个堆栈段3.3 MODEL伪指令是简化段定义源程序格式中必不可少的语句,它设计了哪7种存储模式?各用于创建什么性质的程序?解:3.4如何规定一个程序执行的开始位置,主程序执行结束应该如何返回DOS,源程序在何处停止汇编过程?解:开始位置:用标号指明返回DOS:利用DOS功能调用的4CH子功能来实现汇编停止:执行到一条END伪指令时,停止汇编3.5逻辑段具有哪些属性?解:段定位、段组合和段类型。

3.6给出采用一个源程序格式书写的例题3.1源程序例题3.1:创建一个在屏幕上显示一段信息的程序……解:stack segment stackdb 1024(0)stack 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 start3.7DOS支持哪两种可执行程序结构,编写这两种程序时需要注意什么?解:(1). EXE程序程序可以有多个代码段和多个数据段,程序长度可以超过64KB通常生成EXE结构的可执行程序(2). COM程序只有一个逻辑段,程序长度不超过64KB需要满足一定条件才能生成COM结构的可执行程序(MASM 6.x需要采用TINY模式)3.8举例说明等价“EUQ”伪指令和等号“=”伪指令的用途解:符号定义伪指令有“等价EQU”和“等号=”:符号名 EQU 数值表达式符号名 EQU <字符串>符号名=数值表达式EQU用于数值等价时不能重复定义符号名,但“=”允许有重复赋值。

1632位微机原理与汇编语言课后第三章习题答案

1632位微机原理与汇编语言课后第三章习题答案

习题 3.9(1)mov al, 23h and 45h or 67h;al=67h(2)mov ax, 1234h/16 + 10h;ax=0133h(3)mov ax, 23h shl 4;ax=0230h(4)mov al, ‘a’ and (not (‘a’-’A’));al=41h(5)mov ax, (76543 lt 32768) xor 7654h;ax=7654h习题 3.10(1)41h 42h 43h 0ah 10h 45h 46h ffh - 04h 04h 04h ffh - 04h 04h04h ffh - 04h 04h 04h(2)10h 00h fbh ffh - - - - - -习题 3.11(1)my1b db 'Personal Computer'(2)my2b db 20(3)my3b db 14h(4)my4b db 00010100b(5)my5w dw 20 dup(?)(6)my6c equ 100(7)my7c equ < Personal Computer >习题 3.14(1)offset varb = 0104h;offset mess = 0114h(2)type buff = 1;type mess = 1;type vard = 4(3)sizeof varw = 4;sizeof buff = 10;sizeof mess = 5(4)lengthof varw =2;lengthof vard = 1习题 3.15(1)mov byte ptr [bx],1000 ;1000超出了一个字节范围(2)mov bx,offset myword[si];OFFSET只能用于简单变量.寄存器的值只有程序执行时才能确定,而offset是汇编过程计算偏移地址,故无法确定,可以改为lea bx,myword[si](3)cmp mybyte1,mybyte2 ;两个都是存储单元,指令不允许(4)mov mybyte1,al+1 ;数值表达式应为运算符加常量,寄存器值只有执行时才能确定,汇编时无法计算(5)sub al,myword ;字节量AL与字量myword,类型不匹配(6)jnz myword ;Jcc指令只有相对短转移寻址方式,不支持间接寻址方式,间接寻址指指令代码中指示寄存器或存储单元,目的地址从寄存器或存储单元中取得习题 3.16.model small ;定义程序的存储模式.stack ;定义堆栈段.data ;定义数据段.codestart: mov ax,@data;程序段起点mov ds,ax ;设置DSmov ah,1 ;只允许输入小写字母int 21hsub al,20h ;转换为大写字母mov dl,almov ah,2int 21h ;显示mov ax,4c00hint 21hend start习题 3.17ASCTOH macrolocal asctoh1,asctoh2cmp al,'9'jbe asctoh1 ;;小于等于‘9’,说明是0~9,只需要减去30hcmp al,'a'jb asctoh2 ;;大于‘9’,小于‘a’,说明是A~F,还要减7sub al,20h ;;大于等于‘a’,说明是a~f,还要减20h asctoh2: sub al,7asctoh1: sub al,30hendm.model small ;定义程序的存储模式.stack ;定义堆栈段.data ;定义数据段LEDtable db 0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8hdb 80h,90h,88h,83h,0c6h,0c1h,86h,8ehdispmsg db 'input a number:$'crlf db 0dh,0ah,'$'lednum db ?.codestart: mov ax,@data;程序段起点mov ds,ax ;设置DSmov dx,offset dispmsgmov ah,09hint 21hmov ah,1int 21hasctohmov lednum,almov dx,offset crlfmov ah,09hint 21hmov bx,offset LEDtablemov al,lednumxlatmov bl,almov cl,4rol al,clcall htoascmov al,blcall htoascmov ax,4c00hint 21hHTOASC proc;子程序HTOASC:将al低4位表达的十六进制数转换为ASCII码push bxmov bx,offset ASCII ;bx指向ascii码表and al,0fh ;取得一位16进制数xlat CS:ASCII ;换码:AL←CS:[BX+AL]mov dl,almov ah,2int 21hpop bxret;数据区ASCII db 30h,31h,32h,33h,34h,35h,36h,37h,38h,39hdb 41h,42h,43h,44h,45h,46hHTOASC endpend start习题3.18mov al, bufXcmp al, bufYjae donemov al, bufYdone: mov bufZ, al习题3.19.;习题3.19.model small.stack.databufX dw -7signX db ?.codestart: mov ax,@datamov ds,axcmp bufX,0 ;test bufX,80hjl next ;jnz nextmov signX,0jmp donenext: mov signX,-1done: mov ax,4c00hint 21hend start习题3.20.;习题3.20.model small ;定义程序的存储模式.stack ;定义堆栈段.data ;定义数据段bufx dw -1bufy dw -1bufz dw -1.codestart: mov ax,@data;程序段起点mov ds,ax ;设置DSmov dl,'2'mov ax,bufxcmp ax,bufyje next1dec dlnext1: cmp ax,bufzje next2mov bx,bufycmp bx,bufzje next2dec dlnext2: mov ah,2int 21hmov ax,4c00hint 21hend start习题3.21.;数据段number db 78h ;实现假设的一个数值0111 1000B,D3为1addrs dw offset fun0,offset fun1,offset fun2,offset fun3dw offset fun4,offset fun5,offset fun6,offset fun7;取得各个处理程序开始的偏移地址.codestart: mov ax,@data;程序段起点mov ds,ax ;设置DSmov al,numbermov bx,0 ;BX←记录为1的位数mov dl,'?' ;处理数据为零的情况,显示?cmp number,0jnz restartmov ah,2int 21hjmp doneRestart: cmp al,0 ;AL=0结束jz doneagain: shr al,1 ;最低位右移进入CFjc next ;为1,转移inc bx ;不为1,继续,只在不为1的时候增加bx,所以后文补充jmp againnext: push axpush bxshl bx,1 ;位数乘以2(偏移地址要用2个字节单元)jmp addrs[bx] ;间接转移: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 dispdisp: mov ah,2 ;显示一个字符int 21hpop bxpop axinc bx ;注意,即使Di位不为1,为记录确切的分支入口,仍然需要增加bxjmp restartdone: mov ax,4c00hint 21hend start习题3.22.model small ;定义程序的存储模式.stack ;定义堆栈段.data ;定义数据段b_data db 12h,45h,0f3h,6ah,20h,0feh,90h,0c8h,57h,34h ;原始数据num equ 10 ;数据个数sum db ? ;预留结果单元.codestart: mov ax,@data;程序段起点mov ds,ax ;设置DSxor si, si ;位移量清零xor al, al ;取第一个数mov cx, num ;累加次数again: add al, b_data[si] ;累加inc si ;指向下一个数loop again ;如未完,继续累加mov sum, al ;完了,存结果mov ax,4c00hint 21hend start习题3.23;xiti323,空格数目放在total中.model small ;定义程序的存储模式.stack ;定义堆栈段.data ;定义数据段total dw ?wtemp dw ? ;是writ子程序的入口参数.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 退出循环mov total,ax ;total中放空格数mov ax,totalmov wtemp,axcall writemov ax,4c00hint 21hwrite proc ;显示有符号10进制数的通用子程序write push ax ;入口参数:共享变量wtemppush bxpush dxmov ax,wtemp ;取出显示数据test ax,ax ;判断数据是0,正数还是负数jnz write1mov dl,'0' ;是0,显示“0”后退出mov ah,2int 21hjmp write5write1: jns write2 ;是负数,显示“-“mov bx,ax ;ax中数据暂存于bx,因为要用dos调用mov dl,'-'mov ah,2int 21hmov ax,bxneg ax ;数据求补(绝对值)write2: mov bx,10push bx ;10压入堆栈,作为推出标志write3: cmp ax,0 ;数据(商)为0,转向显示jz write4sub dx,dx ;扩展被除数dx.axdiv bx ;数据除以10,dx.ax/10,商送ax,余数送dxadd dl,30h ;余数(0~9)转换为ascii码push dx ;数据各位按照先低位后高位依次压入堆栈jmp write3write4: pop dx ;数据各位按照先高位后低位依次弹出堆栈cmp dl,10 ;判断是否结束,标志为10je write5mov ah,2 ;显示int 21hjmp write4write5: pop dxpop bxpop axretwrite endpdpcrlf proc ;使光标回车换行的子程序push axpush dxmov ah,2mov dl,0dhint 21hmov ah,2mov dl,0ahint 21hpop dxpop axretdpcrlf endpend start习题3.24;数据段count equ 100parray dw count dup(?) ;假设有100个数据wordsum dw 0msg db ‘overflow’,’$’;代码段mov cx,countmov ax,0mov bx,offset parrayagain: add ax,[bx]jnc nextmov dx,offset msgmov ah,9int 21h ;显示溢出信息jmp done ;然后,跳出循环体next: add bx,2loop againmov wordsum,axdone: mov ax,4c00hint 21h习题3.25;xiti325.asm;编程把—个16位无符号二进制数转换成为用8421BCD码表示的5位十进制数。

微机原理第三章课后习题解答

微机原理第三章课后习题解答

3.1已知DS=091DH,SS=1E4AH,AX=1234H,BX=0024H,CX=5678H,BP=0024H,SI=0012H,DI=0032H,(09226H)=00F6H,(09228H)=1E40H ,(1E4F6H)=091DH。

在以上给出的环境下,试问下列指令段之行后的结果如何?(1)MOV CL,[BX+20H][SI];物理地址=DS*10H+BX+SI+20H=091D0H+0024H+0012H+0020H=09226H(09226H)=00F6H,(09226H)=F6H, (09227H)=00H执行后:CL=F6H(2)MOV [BP][DI], CX物理地址=SS*10H+BP+DI=1E4A0H +0024H+0032H=1E4F6HCX=5678H 执行后:(1E4F6H) = 5678H(3)LEA BX, [BX+20H][SI];BX=BX+20H+SI=0056HMOV AX, [BX+2];物理地址=DS*10H+BX+2=091D0H +0058H=09228H (09228H)=1E40H 执行后:AX=1E40H(4)LDS SI, [BX][DI];物理地址=DS*10H+BX+DI=091D0H +0056H=09226H (09226H)=00F6H (09228H)=1E40H执行后:BX=(09226H)=00F6HDS=(09228H)=1E40HMOV [SI],BX物理地址=DS*10H+SI =1E400H +0012H=1E412HBX=0024H, 执行后:(1E412H)=0024H (5)XCHG CX,[BX+32H]物理地址=DS*10H+BX+32H =091D0H +0056H =09226H (09226H)=00F6H , CX=5678H执行后:(09226H)=5678H , CX=00F6HXCHG [BX+20H][SI], AX物理地址=DS*10H+BX+20H+SI =091D0H +0056H =09226H (09226H)=5678H , AX=1234H执行后:(09226H)=1234H , CX=5678H3.2设DS=1000H,SS=2000H,AX=1A2BH,BX=1200H,CX=339AH,BP=1200H,SP=1350H,SI=1354H,(11350H)=0A5H,(11351H)=3CH,(11352H)=0FFH,(11353H)=26H,(11354H)=52H,(11355H)=0E7H,(126A4H)=9DH,(126A5H)=16H,(21350H)=88H,(21351H)=51H。

微机控制技术第三章、第四章练习题答案Word版

微机控制技术第三章、第四章练习题答案Word版

微机控制技术第三章、第四章练习题答案第三章3-1选择题1、MOVX A,@DPTR指令中源操作数的寻址方式是(B)(A)寄存器寻址(B)寄存器间接寻址(C)直接寻址(D)立即寻址2.ORG 0003HLJMP 2000HORG 000BHLJMP 3000H 当CPU响应外部中断0后,PC的值是(B)(A)0003H (B)2000H (C)000BH (D)3000H3.执行PUSH ACC指令,MCS-51完成的操作是(A)(A)SP+1 SP (ACC)(SP)(B)(ACC)(SP)SP-1 SP(B)(C)SP-1 SP (ACC) (SP) (D)(ACC)(SP)SP+1 SP4、LCALL指令操作码地址是2000H,执行完相子程序返回指令后,PC=(D)(C)2000H (B)2001H (C)2002H (D)2003H5、51执行完MOV A,#08H后,PSW的一位被置位(D)(A)(A)C (B)F0 (C)OV (D)P6、下面条指令将MCS-51的工作寄存器置成3区(B)(A)MOV PSW,#13H (B)MOV PSW,#18H(B)SETB PSW.4 CLR PSW.3 (d) SETB PSW.3 CLR PSW.47、执行MOVX A,DPTR指令时,MCS-51产生的控制信号是(C)(D)/PSEN (B)ALE (C)/RD (D)/WR8、MOV C,#00H的寻址方式是(A)(A)位寻址(B)直接寻址(C)立即寻址(D)寄存器寻址9、ORG 0000HAJMP 0040HORG 0040HMOV SP,#00H当执行完左边的程序后,PC的值是(C)(A)0040H (B)0041H (C)0042H (D)0043H10、对程序存储器的读操作,只能使用(D)(A)MOV指令(B)PUSH指令(C)MOVX指令(D)MOVC指令3-2判断题。

4.MCS-51的相对转移指令最大负跳距是127B。

微机原理与接口技术张颖超叶彦斐第3章习题答案

微机原理与接口技术张颖超叶彦斐第3章习题答案

习题1.指出下列指令中操作数的寻址方式(1) MOV BX, 20H (2) MOV AX, [1245H](3) MOV DX, [SI] (4) MOV 100[BX], AL(5) MOV [BP][SI], AX (6) MOV [BX+100][SI], AX(7) MOV [1800H], AL (8) MOV [SI], AX答:源操作数目的操作数1 立即寻址寄存器寻址2 直接寻址寄存器寻址3 寄存器间接寻址寄存器寻址4 寄存器寻址寄存器相对寻址5 寄存器寻址基址加变址寻址6 寄存器寻址相对基址加变址寻址7 寄存器寻址直接寻址8 寄存器寻址寄存器间接寻址2. 判断下列操作数寻址方式的正确性,对正确的指出其寻址方式,错误的说明其错误原因:(1) [AX] (2) [SI+DI](3) BP (4) BH(5) DS (6) [BL+44](7) [BX+BP+32] (8) [DX](9) [CX+90] (10) [BX*4](11) BX+90H (12) SI[100H]答:(1) 错误,AX不能用于访问内存单元(2) 错误,两个变址寄存器SI和DI不能同时用于内存单元的有效地址(3) 正确,寄存器寻址方式(4) 正确,寄存器寻址方式(5) 正确,寄存器寻址方式(6) 错误,寄存器BL不能用于表示内存单元的有效地址(7) 错误,BX和BP都是基址寄存器,不能同时用于内存单元的有效地址(8) 错误,DX不能用于表示内存单元的有效地址(9) 错误,CX不能用于表示内存单元的有效地址(10)错误,16位寄存器不能乘以比例因子(11) 错误,没有这样的寻址方式(12) 错误,书写方式不对,应该写成100H[SI]3. 已知DS=2000H,ES=1000H,SS=1010H,SI=1100H,BX=0500H,BP=0200H,请指出下列源操作数字段是什么寻址方式?源操作数字段的物理地址是多少?(1) MOV AL, [2500H](2) MOV AX, [BP](3) MOV AX, ES:[BP+10](4) MOV AL, [BX+SI+20]答:(1)源操作数属于直接寻址,物理地址=DS⨯16+2500H=20000H+2500H=22500H;(2)源操作数属于寄存器间接寻址,物理地址=SS⨯16+(BP)=10100H+0200H=10300H(3)源操作数属于寄存器相对寻址,物理地址=ES⨯16+(BP)+100=10000H+0200H+0AH=1020AH(4)源操作数属于基址加变址寻址,物理地址=DS⨯16+(BX)+(SI)+20=20000H+0500H+1100H+14H=21614H4. 判断下列指令的对错,如果错误请说明原因。

《微型计算机原理与接口技术》第三习题答案

《微型计算机原理与接口技术》第三习题答案

《微型计算机原理与接⼝技术》第三习题答案《微机原理与接⼝技术》习题解答习题11.1 冯·诺依曼型计算机的设计⽅案有哪些特点?【解答】冯·诺依曼型计算机的设计⽅案是“存储程序”和“程序控制”,有以下5⽅⾯特点:(1)⽤⼆进制数表⽰数据和指令;(2)指令和数据存储在内部存储器中,按顺序⾃动依次执⾏指令;(3)由运算器、控制器、存储器、输⼊设备和输出设备组成基本硬件系统;(4)由控制器来控制程序和数据的存取及程序的执⾏;(5)以运算器为核⼼。

1.2 微处理器和微型计算机的发展经历了哪些阶段?各典型芯⽚具备哪些特点?【解答】经历了6代演变,各典型芯⽚的特点如表1-1所⽰。

表1-1 微处理器的发展及典型芯⽚的特点1.3 微型计算机的特点和主要性能指标有那些?【解答】除具有运算速度快、计算精度⾼、有记忆能⼒和逻辑判断能⼒、可⾃动连续⼯作等基本特点以外,还具有功能强、可靠性⾼、价格低廉、结构灵活、适应性强、体积⼩、重量轻、功耗低、使⽤和维护⽅便等。

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

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

1.4 常见的微型计算机硬件结构由哪些部分组成?各部分的主要功能和特点是什么?【解答】微型计算机硬件⼀般由微处理器、内存储器、外存储器、系统总线、接⼝电路、输⼊/输出设备等部件组成。

主要组成部件的功能和特点分析如下:(1)微处理器:是微型计算机的核⼼部件,由运算单元ALU、控制单元、寄存器组以及总线接⼝部件等组成,其功能是负责统⼀协调、管理和控制系统中的各个部件有机地⼯作。

(2)内存储器:⽤来存放计算机⼯作过程中需要的操作数据和程序。

可分为随机存储器RAM 和只读存储器ROM。

RAM存放当前参与运⾏的各种程序和数据,特点是信息可读可写,存取⽅便,但信息断电后会丢失;ROM⽤于存放各种固定的程序和数据,特点是信息固定不变,关机后原存储的信息不会丢失。

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

第 三 章 存 储 器习题答案一、填空题1、某存储器模块的容量为64K 字节,若采用2164(64K ×1位)组成,则需要2164 8 片,若改用2764(8K ×8位),则需 8 片。

解答:容量单个存储器芯片的存储存储器系统的存储容量=片个数构成存储器系统所需芯所以:64*82164=864*1K bitK bit=所需芯片个数片64*82764=88*8K bitK bit=所需芯片个数片2、1K ⅹ8位的RAM 芯片有 10 条地址线, 8 条数据线,若用其组成16K ⅹ8位存储器需要 16 片。

解答:存储单元的个数(字长)通常与地址线的位数相关,每个存储单元存储的二进制位数(位数)与数据线的位数相关。

存储容量为1K*8bit (8K*8位),表示每片RAM 有1K 个存储单元(K 1210=),每个存储单元存储8位二进制数,也可以写为1KB (B 表示8位二进制数,即1个字节Byte ),因此该RAM 芯片有10根地址线(A 0-A 9),8根数据线(D 0-D 7)。

3、现要用6116SRAM 芯片构成8K ×32位的存储器,共需此种芯片 16 片。

解答:8*326116=162*8K bitK bit=所需芯片个数片二、选择题1、SRAM 芯片6116的3个信号CE 、OE 、WE 电平分别为 时,6116的工作方式为读出。

( D )A.1,0,0 B.0,0,0 C.0,1,1 D.0,0,1解答:3个信号CE 、OE 、WE 为6116的控制信号,CE (书中用CS 表示):片选信号,低电平有效,CE 为低电平时,芯片被选中,此时可以进行读写操作,WE :写允许信号,低电平有效时允许将数据写入芯片,OE :输出允许信号,低电平有效时为读操作。

因此当6116处于读工作方式时CE 为0,OE 为0,WE 为1;处于写工作方式时CE 为0,OE 为1,WE 为0。

答案D 正确2、RAM 6116芯片有2K×8位的容量,它的片内地址选择线和数据线分别是(B )A.A0~A15和D0~D15B.A0~A10和D0~D7C.A0~A11和D0~D7D.A0~A11和D0~D15解答:6116芯片的容量为2K×8位,因此6116有11根地址线,8根数据线,答案B正确,与填空题2类似,不再重复讲述。

3、若设某容量为8K字节的RAM起始地址为2000H,则其末地址为(D )。

A.21FFH B.23FFH C.27FFH D.3FFFH解答:存储单元个数=末地址-首地址+1,8K= 213=2000H,所以答案为D4、在存储器系统中,实现片选控制的方法有三种,其中不会产生地址重叠问题的有(A)A.全译码法B.部分译码法C.线选法D.以上都会解答:常用的存储器的地址译码有全译码法,部分译码法和线选法,其中全译码法是将高位地址线全部经译码后产生各存储器芯片的片选信号,低位地址线直接与各存储器芯片的地址线相连,采用全译码法时,存储器的地址是连续的且唯一确定的,即无地址间断和地址重叠;部分译码法是将高位地址线中的一部分进行译码后产生各存储器芯片的片选信号,由于存在部分未参与译码的高位地址,这些地址的取值可任意,所以存在地址重叠问题;线选法是将高位地址线直接作为存储器芯片的片选信号,每一根地址线选中一个芯片,因此存在空闲地址线,导致地址重叠。

所以不会产生地址重叠的译码方法是全地址译码法。

(要求必须掌握的方法)5、EPROM的特点有(B )A.程序和数据由用户自行写入,一经写入,即无法更改B.程序和数据由用户自行写入,写入的内容可由紫外线照射擦除C.程序和数据由用户自行写入,可用电信号进行清除或改写D.芯片不离开插件板就可擦除数据EPROM是一种可擦除重写的只读存储器(Eraser Programed ROM),通常用紫外线对其窗口进行照射,即可把它所存储的内容擦去。

6、______是构成存储器的最基本的单位。

(A)A.存储单元B.存储段C.存储体D.芯片三、分析计算题1、某微型计算机的内存RAM 区地址为00000H ~3FFFFH ,试问RAM 的存储容量为多少?若采用6116(2K×8 bit ),6264(8K×8 bit ),62128(16K×8 bit ),2114(1K×4 bit ),2141(4K×1bit )构成存储器各需要多少芯片。

解:存储单元个数=末地址-首地址+1=40000H=4*164=218=256K ,每个存储单元存储8位二进制数, 因此该存储器系统的存储容量为256KB 。

256*86116=1282*8K bitK bit =所需芯片个数片256*86264=328*8K bitK bit =所需芯片个数片256*862128=1616*8K bitK bit =所需芯片个数片,256*82114=5121*4K bitK bit =所需芯片个数片256*82141=5124*1K bitK bit =所需芯片个数片2、(1)已知某微机控制系统中的RAM 容量为4k×8bit ,首地址为A3000H ,则该RAM 芯片末地址为 A3FFFH 。

(2)已知存储体地址范围为92000H~98FFFH ,则其存储容量为 28KB 。

解:1)存储单元个数=末地址-首地址+1=4K=212=1000H,所以该RAM 的末地址为A3FFFH2)存储单元个数=末地址-首地址+1=7000H=7*163=7*212=28K每个存储单元存储8位二进制数, 因此该存储器系统的存储容量为28KB 。

3、某8086微机系统(在最小模式下)的存储器是由2片RAM 6116(2K ⨯8)和2片EPROM2716(2K ⨯8)构成,8086CPU 与存储器连接的电路图3-1所示,试写出每个存储器芯片的地址范围。

解:第一片 A19~A12=01000000,地址范围是 40000H~40FFEH 第二片 A19~A12=01000000,地址范围是 40001H~40FFFH 第三片 A19~A12=01000001,地址范围是 41000H~41FFEH 第四片 A19~A12=01000001,地址范围是 41000H~41FFFH4、某8086系统的存储器系统如图3-2所示,图中8086 CPU芯片上的地址、数据信号线经锁存、驱动后成为地址总线A19~A0、数据总线D15~D0。

ROM0(偶存储体),ROM1(奇存储体)是两片EPROM,型号为2764(8K×8)。

RAM0(偶存储体)、RAM1(奇存储体)是两片RAM,型号为6264(8K×8)。

完成下列任务。

1)图中74LS138的功能是什么?答:译码功能2)已知RAM0和RAM1组成的存储器的地址范围为90000H~93FFFH,完成图中未连的其余所有连线。

答:见下图3)根据图中的连线写出ROM0、ROM1的地址范围。

答:ROM0的地址范围为94000H~97FFEH;ROM1的地址范围为94000H~97FFFH 5、某8088微机系统中用6264(8Kⅹ8位)及一个74LS138译码器组成存储系统,要求地址范围为B0000H~B3FFFH。

1)系统的存储容量为多少?答:存储单元个数=末地址-首地址+1=B3FFFH-B0000H+1=4000H=4*163=214=16K每个存储单元存储8位二进制数, 因此该存储器系统的存储容量为16KB 。

2)计算所需6264芯片的个数。

答:16*86264=28*8K bitK bit=所需芯片个数片3)画出8088CPU 与存储器的连接电路图。

本题目属于存储器扩展中的字扩展(要求必须掌握):构成存储器系统时,存储单元的个数(字长)不满足要求,但是位数满足要求。

如用8K*8bit 存储器芯片组成16KB 的存储器系统,需要2片进行字长方向的扩展。

按照字扩展步骤:(1)先求出组成存储器系统所需的芯片数;(已经算出需要2片)(2)各芯片的数据线并联且接至数据总线的相应数据线上;(2片6264的D0~D7并联接在8088系统总线的D0~D7上)(3)芯片本身的地址线并联到地址总线的低位地址线上(片内地址,本题目中就是2片6264的A0~A12并联接在8088系统总线的A0~A12上),地址总线的高位地址(片选地址,本题目中的高位地址线就是A13~A19)接译码器(74LS138译码器)的输入端,译码器的输出端接到各个芯片的片选信号,即存储器芯片的片选信号是分开的,分别接到地址译码器不同的输出端。

两片6264 要接到两个不同的译码器输出端,选中分属于不同存储器的存储单元。

存储器地址译码时通常采用全地址译码,74LS138译码器进行译码; 连接时高位地址的低三位(A15~A13)接74LS138译码器的三个输入端C,B,A,其他高位地址接74LS138译码器的三个使能端122,,A B G G G ,(只有当122=1,=0,=0A B G G G 时才允许对A,B,C,输入的代码进行译码),连接时电路有多种连接方法,只要满足地址要求即可。

(4)6264上的输出允许信号OE 与CPU 的读信号RD 相连,当CPU 执行存储器读操作时被选中的存储单元的内容由DB 送入CPU 内;6264上的写允许信号WE 与CPU 的写信号WE 相连,当CPU 执行存储器写操作时CPU 内的数据经由DB 送入存储器写入选中的单元。

对内存/IO 端口选择线M IO /通常在最小模式下和片选地址线一起,作为译码器的输入,此时0/=M IO 。

根据题目中给出的首地址可以得出:当A15, A14, A13为000时,译码器的输出端0Y 有效,因此将0Y 接第一片6264的片选信号1CS ;当A15, A14, A13为001时,译码器的输出端1Y 有效,因此将1Y 接第二片6264的片选信号1CS ;其他高位地址A 19=A 17=A 16=1,A 18=0,为了保证三个使能端122=1,=0,=0A B G G G ,可将A 19直接接在1G 上,A18和M IO /相或接在2A G ,A 17和A 16经过与非门后连接2B G (连接电路不唯一)。

具体的连接电路为6、在8086CPU 组成的系统中,用4片6264(8K×8 bit )存储芯片组成随机RAM 存储系统,其第一片的首地址为(2000H :8000H ),试写出每一片的起始地址和末尾地址。

解:8088与6264相连时A1-A13作为片内地址线,A13-A19作为片选地址线(高位地址线),地址连续,所以这4片6264的地址范围为第一片A19~A13=0010100,地址范围是28000H~2BFFEH第二片A19~A13=0010100,地址范围是28001H~2BFFFH第三片A19~A13=0010110,地址范围是2C000H~2FFFEH第四片A19~A13=0010110,地址范围是2C001H~2FFFFH注意:首地址对应的A0~A12全为0,末地址对应的A0~A12全为1。

相关文档
最新文档