微机原理与汇编语言复习资料.doc

上传人:工**** 文档编号:543583196 上传时间:2023-05-22 格式:DOC 页数:13 大小:543KB
返回 下载 相关 举报
微机原理与汇编语言复习资料.doc_第1页
第1页 / 共13页
微机原理与汇编语言复习资料.doc_第2页
第2页 / 共13页
微机原理与汇编语言复习资料.doc_第3页
第3页 / 共13页
微机原理与汇编语言复习资料.doc_第4页
第4页 / 共13页
微机原理与汇编语言复习资料.doc_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《微机原理与汇编语言复习资料.doc》由会员分享,可在线阅读,更多相关《微机原理与汇编语言复习资料.doc(13页珍藏版)》请在金锄头文库上搜索。

1、1.计算机由运算器,控制器,存储器,输入设备,输出设备等5大基本部件组成。2.冯诺依曼提出存储设计思想是:数字计算机的数制采用二进制,存储程序,程序控制。3.计算机的基本组成框图:4.微型计算机系统的3个层次:(1)微处理器:也叫微处理机,它本身并不是计算机,微处理器是微型计算机的核心部件,又叫中央处理器(CPU),微处理器包括算术逻辑部件,控制部件和寄存器组3个基本部分;(2)微型计算机:简称微机,是指以CPU为核心,并配以存储器(ROM和RAM),输入输出接口电路,系统总线及相应的外部设备而构成的完整的,可独立工作的计算机。(3)微型计算机系统:是以微型计算机为核心,再配以相应的外围设备,

2、电源,辅助电路和控制微型计算机工作的软件而构成的完整的计算机系统。(4)三者的关系:密切的相互依存关系。4.机器字长:指计算机能同时进行多少位的二进制数运算。5.操作系统:是系统软件中最重要的部分,功能是对计算机系统的全部硬件和软件资源进行统一管理、统一调度、统一分配。6.存储程序工作原理(存储程序、程序控制)(1)计算机系统由运算器、控制器、存储器、输入设备、输出设备组成,并规定了他们的功能(2)程序和数据在计算机中用二进制数表示(3)计算机的工作过程是由存储程序控制的7.一个字节等于(8)个二进制位,1KB=1024字节。8.在计算机内部,一切信息的存取、处理与传送均采用二进制9.一个完整

3、的计算机应包括硬件系统和软件系统10.微型计算机硬件系统的性能主要取决于微处理器11.微处理器的数据基本单位为字。一个字的长度通常为 16位二进制。12.计算机字长所取决的是数据总线宽度。13.8086的内部结构从功能上分成两个单元1.总线接口单元BIU:管理8086与系统总线的接口;负责CPU对存储器和外设进行访问2.执行单元EU:负责指令的译码、执行和数据的运算两个单元相互独立,分别完成各自操作,还可以并行执行,实现指令预取(指令读取和执行的流水线操作)14.8088有8个通用的16位寄存器(1)数据寄存器:累加器AX;基址寄存器BX;计数寄存器CX;数据寄存器DX;(2)变址寄存器:源变

4、址寄存器SI;目的变址寄存器DI;(3)指针寄存器:堆栈指针SP;基址指针BP;(4)专用寄存器:指令指针IP;FR标志寄存器FR;(5)段寄存器:代码段寄存器CS;数据段寄存器DS;堆栈段寄存器SS;附加段寄存ES15.ALE(地址所存允许信号)输出、三态、高电平有效;ALE引脚高有效时,表示复用引脚:AD7 AD0和A19/S6 A16/S3正在传送地址信息;由于地址信息在这些复用引脚上出现的时间很短暂,所以系统可以利用ALE引脚将地址锁存起来。16.1)写出每条汇编指令执行后相关寄存器中的值。第一空:F4A3H第二空:31A3H第三空:3123H第四空:6246H第五空:826CH第六空

5、:6246H第七空:826CH第八空:04D8H第九空:0482H第十空:6C82H第十一空:D882H第十二空:D888H第十三空:D810H第十四空:6246H(2)只能使用目前学过的汇编指令,最多使用4条指令,编程计算2的4次方。解答如下:mov ax,2 add ax,ax add ax,ax add ax,ax17.总线周期IO/M*WR*RD*存储器读低高低存储器写低低高I/O读高高低I/O写高低高总线操作是指CPU通过总线对外的各种操作8086/8088的总线操作主要有:存储器读、I/O读操作存储器写、I/O写操作中断响应操作总线请求及响应操作CPU正在进行内部操作、并不进行实际

6、对外操作的空闲状态Ti。18.(1)时序:是指信号高低电平(有效或无效)变化及相互间的时间顺序关系CPU时序决定系统各部件间的同步和定时总线时序描述CPU引脚如何实现总线操作(2)指令周期:是指一条指令经取指、译码、读写操作数到执行完成的过程。若干总线周期组成一个指令周期(3)总线周期:是指CPU通过总线操作与外部(存储器或I/O端口)进行一次数据交换的过程19.存储器的主要性能指标:存储容量、存取速度、可靠性、性能价格比20.8088存储器写总线周期时序图(最小模式) T1状态输出20位存储器地址A19 A0;IO/M*输出低电平,表示存储器操作;ALE输出正脉冲,表示复用总线输出地址;T2

7、状态输出控制信号WR*和数据D7 D0;T3和Tw状态检测数据传送是否能够完成;T4状态完成数据传送21.8088 I/O写总线周期 T1状态输出16位I/O地址A15 A0 ;IO/M*输出高电平,表示I/O操作;ALE输出正脉冲,表示复用总线输出地址;T2状态输出控制信号WR*和数据D7 D0 ;T3和Tw状态检测数据传送是否能够完成;T4状态完成数据传送22、存储器读总线周期 T1状态输出20位存储器地址A19 A0IO/M*输出低电平,表示存储器操作;ALE输出正脉冲,表示复用总线输出地址T2状态输出控制信号RD*T3和Tw状态检测数据传送是否能够完成T4状态前沿读取数据,完成数据传送

8、23.I/O读总线周期T1状态输出16位I/O地址A15 A0 ;IO/M*输出高电平,表示I/O操作;ALE输出正脉冲,表示复用总线输出地址;T2状态输出控制信号RD*T3和Tw状态检测数据传送是否能够完成T4状态前沿读取数据,完成数据传送24.cache-内存层次和内存-外存层次25.设CS=B000H、DS=1CDEH、SS=4200H、ES=0150H,它们分别为代码段、数据段、堆栈段和附加段的段首址。自每个段首址开始,各段均占64KB的范围,各段之间互不重叠。如图所示。26.设CS=0200H、DS=0400H、SS=0480H,这样代码段、数据段和堆栈段的物理首地址分别为02000

9、H、04000H和04800H。其中代码段占8KB地址空间,数据段占2KB,堆栈段占256B,SP=0100H。如图所示。 26.在显示器上显示“How are you ?”,然后读一个字符,但不显示此字符,若读入字符是y则显示ok。 DSEG SEGMENTDAT1 DBHow are you ?,0DH,0AH,$DAT2 DBOK,0DH,0AH,$DSEG ENDSCSEG SEGMENTASSUME CS:CSEG,DS:DSEGSTART:MOV AX,DSEGMOV DS,AXMOV DX,OFFSET DAT1MOV AH,9INT 21H ;显示提示信息MOV AH,8INT

10、 21H ;输入字符不回显CMP AL,YJNE NEXTLEA DX,DAT2 ;显示okMOV AH,9INT 21HNEXT:MOV AH,4CH ;返回DOSINT 21HCSEG ENDSEND START27.屏幕显示“PASS WORD ?”,随后从键盘读入字符串,并比较这个字符串与内部设定的字符串,若两者相同,则显示“ok”,否则不作任何显示。 DSEG SEGMENTPASS1 DB12ABN EQU $-PASS1DT1 DB“PASS WORD”,0DH,0AH,$PASS2 DB 20 ;最大长度DB ? ;实际长度DB 20 DUP(?)DT2 DBOK $DSEG

11、ENDSCSEG SEGMENTASSUME CS:CSEG,DS:DSEG,ES:DSEGSTART:MOV AX,DSEGMOV DS,AXMOV ES,AXLEA DX,DT1MOV AH,9INT 21H ;显示“PASS WORD”LEA DX,PASS2MOV AH,0AHINT 21H ;等待键盘输入字符串LEA SI,PASS1LEA DI,PASS2CMP BYTE PTR DI+1,N ;检查字符个数是否相等JNE LASTMOV CX,NLEA DI,PASS2+2CLDREPZ CMPSB ;检查字符是否匹配JNZ LAST ;不匹配,程序结束DISOK:LEA DX,

12、DT2 ;匹配,显示OKMOV AH,9INT 21HLAST:MOV AH,4CHINT 21HCSEG ENDSEND START28.编写一个程序,求W=(X2-Y2)/ Z,设X、Y、均为一个8位无符号数,运算不考虑溢出。分析:表达式改写为W=(X+Y)(X-Y)/Z,因为表达式简单,根据表达式运算次序来编写程序,由于运算不考虑溢出,所以不考虑(X+Y)256情况。解:程序清单如下:DSEG SEGMENTDATX DB 80 ;假定X为80DATY DB 50 ;定义Y的值DATZ DB 5 ;定义Z的值DATW DB ? ;定义保存计算结果的存储单元DSEG ENDSSTEG SE

13、GMENT PARA STACKDW 20H DUP(0)STEG ENDSCSEG SEGMENTASSUME CS:CSEG,DS:DSEG,SS:STEGBEGIN:MOV AX,DSEGMOV DS,AXMOV AL,DATX ;取XADD AL,DATY ;计算(X+Y)(AL)MOV BL,DATX ;取XSUB BL,DATY ;计算(X-Y)(BL)MUL BL ;计算(X+Y)(X-Y)(AX)MOV CL,DATZ ;取ZDIV CL ;计算(X+Y)(X-Y)/ZMOV DATW,AL ;保存结果MOV AH,4CH ;返回DOSINT 21HCSEG ENDSEND BEGIN29.编写一个程序,实现键入任一个字符,显示其十进制的ASC码(例如:键入A,显示41H)。 分析:首先接受一个字符,其ASC码一定在0255之间,把二进制的ASCH码转换为十进制后输出即可。转换的算法是:用该数除以100,商是二进制的百位;再把余数除以10,商是二进制的十位;余数是二进制的个位。二进制的百位、十位、个位加上30H即为字符的百位、十位、个位,然后输出即可。解:程序清单如下:CODE SEGMENTASSUME C

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号