《2022年微机原理期末重点总结 .pdf》由会员分享,可在线阅读,更多相关《2022年微机原理期末重点总结 .pdf(10页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、学习必备欢迎下载第一章1.微型计算机( Microcomputer ) :采用微处理器为核心构造的计算机2.微处理器( Microprocessor) :微型机的 运算 和控制 核心,称为中央处理单元(CPU:Central Processing Unit) ,将控制器和运算器集成在一片或几片芯片上构成3. 微型计算机( MicroComputer )是指以微处理器为核心,配上存储器、输入/输出接口电路等所组成的计算机。4微型计算机系统(Micro Computer System)是指以微型计算机为中心,配以相应的外围设备、电源和辅助电路(统称硬件)以及指挥计算机工作的系统软件所构成的系统。5
2、.总线:计算机中各功能部件间传送信息的公共通道,是微型计算机的重要组成部分。5.1 地址总线 AB:在对存储器或I/O 端口进行访问时,通过地址总线传送由CPU 提供的要访问存储单元或 I/O 端口的地址信息。 (单向总线)数据总线 DB:从存储器取指令或读写操作数,对I/O 端口进行读写操作时,指令码 或数据信息 通过数据总线传输。(双向总线)控制总线:各种控制或状态信息通过控制总线传输6. 基数(Radix) :一个数制所包含的数字符号的个数,被称为基数,记为r。7. 在二进制计数系统中,最高位表示符号位,“0”表示正数,“1”表示负数,其余表示数值。7.1 补码:反码末位(包括小数)加1
3、 7.2 由原码直接求补码:二进制数低位(包括小数)的第一个1 右边保持不变(包含此 1) ,左边依次求反8. BCD 码用 4 位二进制数表示1 位十进制数, 只取十个状态, 而且每四个二进制码之间是“逢十进一”。 (常使用 8421 码:即 00001001) 8.1“ 09”的 ASCII 码是 30H39H “AZ”的 ASCII 码是 41H5AH “az”的 ASCII 码是 61H7AH 第二章1. 总线接口单元BIU :取指令时, BIU 负责从内存的指定地址处取出指令,送到指令队列流中排队,执行指令中需要操作数时,也由BIU 从内存的指定地址中取出,送给EU 参加运算。2.8
4、086 组成: 4 个 16 位段寄存器( CDSE ) ;16 位指令指针寄存器IP;20 位地址加法器及总线控制电路;6精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 1 页,共 10 页学习必备欢迎下载个字节指令队列缓冲器2.1 指令指针寄存器:存放下一条要读取的指令在代码段中的偏移地址。由CS 和 IP 的内容决定程序的执行顺序。地址加法器 :将段寄存器和指令指针寄存器的内容相加,得到20 位的物理地址。指令队列缓冲器:086 的指令队列有6 个字节,当指令队列出现2 个空字节, BIU 就自动执行一次取指令周期,将下一条要执行的指令从内存
5、单元读入指令队列。3. 执行单元EU: 负责指令的译码执行组成;通用寄存器:AX 、BX、CX、DX ,SP、BP,SI、DI 16 位标志寄存器FLAGS :存放 CPU 运算的状态特征和控制标志16 位算术运算单元ALU :进行算术及逻辑运算EU 控制电路:接收指令,实时操作。状态标志:表示处理器当前的运行状态。CF(Carry Flag) :进(借)位标志位。最高位产生进(借)位时,该位为1。用于无符号数运算。PF(Farity Flag) :奇偶标志位。当指令执行结果的低8 位中含有偶数个1 时,PF 为 1,否则为0。AF(Auxiliary Flag) :辅助进(借)位标志位。执行
6、加法或减法指令时,若结果的低字节的低四位向高四位有进位或借位,AF 为 1,否则为 0。ZF(Zero Flag) :零标志位。若结果为0,则 ZF 为 1,否则为 0。SF(Sign Flag):符号标志位。当运算结果最高位为1 时, SF 为 1,否则为 0。OF(Overflow Flag) :溢出标志位。有符号数加减运算的结果有溢出OF=1,否则 OF=0 。双高位判别法确定OF=CsCp 最高位、次高位4.存储器的分段管理逻辑段只能开始于物理地址低四位全为0的物理地址通用寄存器数据寄存器DL DH CL CH BL BH AL AH 指针寄存器BP基地址指针SP堆栈指针变址寄存器DI
7、目的变址SI源变址控制寄存器FLAGS状态标志IP指令指针ES 附加段寄存器DS 数 据 段 寄 存SS 堆栈段寄存器CS 代 码 段 寄 存段寄存器AX BX CX DX 逻辑段只有四种类型: CS、DS、SS、ES,可分开、连接或重叠精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 2 页,共 10 页学习必备欢迎下载物理地址:存储器的绝对地址,从00000H 0FFFFFH ,是 CPU 访问存储器的实际寻址地址(也称为绝对地址)。 ( 20 位)逻辑地址记为:段基址:偏移量(16 位)物理地址 =段基址左移4 位偏移量物理地址 =段基址 16
8、 偏移量对于一个确定的存储单元,逻辑地址不唯一,物理地址唯一。5. 总线操作和工作时序总线操作:微处理器通过总线来进行取指令、存取操作数等操作工作时序:指令译码以后按时间顺序产生的确定的控制信号。时钟周期:时钟脉冲信号的一个循环时间,又称为一个“T”状态,是微处理器工作的最小时间单位。指令周期:执行一条指令所需要的时间。总线周期:完成一次对存储器或I/O 端口的操作所需要的时间。第三章1. 寻 址 方 式 : 指 令 指 定 操 作 数 的 位 置 , 即 给 出 地 址 信 息 , 执 行 时 根 据 这 个 地 址 信息找到需要的操作数。这种寻找操作数的过程称为寻址,而寻找操作数的方法,
9、称为寻址方式。1.1 立即寻址:跟随在指令操作码之后(在指令中直接给出来),称为立即数:只适用于双操作数指令中的源操作数 寻址,而且多用来为寄存器赋初值或者目的操作数与一个常数运算1.2 寄存器寻址:存放在CPU 内部的寄存器中,称为寄存器操作数16位操作数,寄存器为AX、BX 、CX、DX 、SI、DI 、SP、BP 8 为操作数,寄存器为AH、AL 、BH 、BL、CH 、CL 、DH、DL 储存器寻址:存放在内存储器中,称为存储器操作数。2 存储器寻址2.1.直接寻址在指令中,有四个段超越前缀:CS、DS、ES、SS 2.2 寄存器间接寻址方式:EA 通过寄存器间接给出。寄存器的内容就是
10、偏移地址。可以表示 EA 的寄存器有4 个 BP、BX、SI、DI注意:利用BX,SI,DI 进行间接寻址时,如果指令前面没有用前缀指令指明段寄存器,则寻址时默认的段寄存器是数据段寄存器DS;利用 BP 进行间接寻址时,如果指令前面没有用前缀指令指明精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 3 页,共 10 页学习必备欢迎下载段寄存器,默认的段寄存器是堆栈寄存器SS. 2.3 寄存器相对寻址方式: EA 是寄存器和立即数的和。2.4 基址变址寻址方式:EA 是基址寄存器 (BP 或 BX) 和变址寄存器 (SI 或 DI) 和2.5 相对基址
11、变址寻址方式:EA 是基址寄存器、变址寄存器和立即数的和。寻址方式源操作数格式使用段寄存器指令举例立即数寻址data (CS)MOV AX,1064H 寄存器寻址reg 无MOV AH,AL 直接寻址data DS MOV AX,1064H 存储器寻址寄存器间接寻址SI 、DI 、BX BP DS SS MOV AX,SI 寄存器相对寻址BX+disp SI+disp DI+disp BP+disp DS DS DS SS MOV AX,BX+1064H 基址变址寻址BX+SI BX+DI BP+SI BP+DI DS DS SS SS MOV AX,BXSI 相对基址变址寻址BX+SI +d
12、isp BX+DI +disp BP+SI +disp BP+DI +disp DS DS SS SS MOV AX,BXDI+1064H 2.6 I/O 端口寻址方式 : 当操作数在外部设备时,使用专门的I/O 指令:输入指令IN 和 输出指令OUT 当端口地址可以用一个字节(低256 个端口)表示时,可直接也可间接寻址,高于256 的 I/O 端口必须间址。输入指令中目的操作数只能为AL 或 AX ;输出指令中源操作数只能为AL 或 AX。3. 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 4 页,共 10 页学习必备欢迎下载.Mov 操作指
13、令小结立即数只能作源操作数目的操作数可以是寄存器或者各种寻址的内存单元。不可以是立即数、IP、CS。目的操作数与源操作数必须类型一致,或者同为字,或者同为字节对于存储器单元与立即数同时作为操作数的情况,必须显式指明,(因为此时立即数可以看做字也可看做字节数)用byte ptr 指示字节类型,用word ptr 指示字类型。段寄存器的操作有一些限制:不允许立即数传送给段寄存器;不允许段寄存器之间的直接数据传送;CS不允许做目的操作数,因为这样直接改变CS 值,将引起程序执行混乱。如果指令有两个操作数,不允许两个都是存储器数。上述四类格式以外的指令必定是非法指令。“MOV ” 指令不改变源操作数,
14、不影响标志位精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 5 页,共 10 页学习必备欢迎下载堆栈指令小结堆栈操作是字操作指令,不要写出“PUSH AL ”等。在 “POP ” 指令中, “POP CS ”为非法指令。堆栈中的数据弹出后,数据并没有在堆栈中消失,除非压入新数据。堆栈操作指令不影响标志位。数据交换指令小结操作数不能为立即数;源操作数和目的操作数不能同时为存储单元;段寄存器不能作为操作数;交换指令不影响标志。换码指令 XLAT 指令格式: XLAT ;执行操作: AL DS16+BX+AL; 1) IN 输入指令指令格式: IN AL
15、/AX ,port/DX 执行操作: AL/AX = port/DX ;从外部设备输入数据给累加器指令格式: OUT port /DX ,AL/AX 执行操作: port/DX = AL/AX;将累加器的数据输出给外部设备目标地址传送指令取有效地址指令LEA (Load Effective Address)指令格式:LEA reg16,SRC ;regSRC 的有效地址地址指针装入DS 指令 LDS(Load pointer DS):高 16 位送给 DS 形成新的数据段;低 16 位送入目的操作数 形成新的偏移地址。地址指针装入ES 指令 LES(Load pointer into ES)
16、:同上标志寄存器传送指令共有 4 条标志传送指令,都为单字节指令,指令的操作数为隐含形式。1)取标志指令LAHF (Load AH from Flags)格式: LAHF 2)置标志指令SAHF (Store AH into Flags)格式: SAHF 3)标志压入堆栈指令PUSHF (PUSH Flags onto stack)格式:PUSHF 操作: SPSP-2 ;SP+1,SP FLAGS (4)标志弹出堆栈指令POPF( POP Flags off stack )格式: POPF 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 6 页,
17、共 10 页学习必备欢迎下载操作: FLAGS SP+1,SP;SPSP+2 3.3.2 算术运算指令乘法指令: 1)无符号数乘法指令MUL (MULtiplication unsigned 2)带符号数的乘法IMUL (Integer MULtiplication 除法指令: 1)无符号数除法指令DIV (DIVision unsigned) 2)带符号数除法指令IDIV (Integer DIVision) 除数只能是被除数的一半被除数为 16 位时,除数应该为8 位;被除数为 32 位时,除数应该为16 位。指令指定的是除数,被除数是隐含的。如除数为字节,则被除数为AX ,所得 8 位商
18、存入 AL ,余数存入AH;如除数类型为字,则被除数为DX:AX ,所得 16 位商存入 AX ,余数存入DX 符号扩展指令:若被除数和除数字长相等,在做IDIV之前,必须先用符号扩展指令CBW 、CWD 将被除数的符号位扩展,使之成为16 位数或 32 位数。正数的符号位为零,在高位全添上零;负数的符号位为1,高位全添上1。保证原数据的大小和符号不变。字节扩展指令CBW 格式: CBW 操作:将 AL 的符号位扩展到AH ,AL 扩展成 AX 当( AL)的最高有效位为0 时( AH )= 00H 当( AL )的最高有效位为1 时( AH)= FFH 字扩展指令CWD (Convert W
19、ord to Double word) 格式: CWD 操作:将 AX 的符号位扩展到DX ,AX 扩展成 DX,AX 当( AX )的最高有效位为0 时( DX )= 00H 当( AX )的最高有效位为1 时( DX )= FFH 3.3.3 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 7 页,共 10 页学习必备欢迎下载逻辑运算和移位指令1)逻辑 “ 与” 指令 AND (logical AND) 相当于乘指令格式及操作:AND dst,src ;(dst)(dst)(src) 目的操作数:寄存器、存储器源操作数:立即数、寄存器、存储器操
20、作对象可以为字节、可以为字!2)逻辑 “ 或” 指令 OR (logical inclusive OR) 3) 逻辑 “ 非” 运算 NOT (logical NOT) 相当于取反操作数可以是8 位或 16 位寄存器或存储器,但不可以是立即数!不影响任何状态标志位!4)逻辑 “ 异或 ” 指令 XOR (logical eXclusive OR) 指令格式及操作:XOR dst,src ;(dst)(dst) (src) 5)测试指令TEST(TEST or non-destructive logical AND) 指令格式及操作:TEST dst,src ;(dst)(src) 指令格式及运
21、算均与AND 指令相同,但是不保留运算结果,即不影响目的操作数,只根据运算结果设置标志。2.移位指令逻辑左移 SHL 算术左移 SAL 逻辑右移 SHR 算术右移 SAR 3,.控制移位指令汇编语言程序设计5.1.2 汇编语言语句的类型和格式1、语句的类型指令语句:能产生目标代码,CPU 可以执行的能完成特定功能的语句伪指令语句不产生目标代码,仅在汇编过程中起控制作用或指示作用2、语句的格式字名 助记符操作数 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 8 页,共 10 页学习必备欢迎下载字名:指令语句中,名字是一个标号,实质上是指令的符号地址
22、助记符:指令语句中助记符有90 多种操作数:指令语句:单操作数、双操作数、无操作数伪指令语句:操作数不定,有多个操作数时需使用逗号隔开操作数类型:常数寄存器标号表达式表达式中常用的运算符: 算术运算符: +(加),- (减),*( 乘),/(除)和 MOD( 模除,即两个整数相除后取余数) 逻辑运算符: AND( 逻辑 “ 与”),OR( 逻辑 “ 或”) ,XOR( 逻辑 “ 异或 ”)和 NOT( 逻辑 “ 非”) 关系运算符:EQ(等于 ),NE( 不等),LT(小于 ),GT( 大于 ),LE(小于或等于 ),GE(大于或等于 )等 分析运算符 SEG 运算符:得到一个标号或变量所在段
23、的段地址OFFSET 运算符:得到一个标号或变量的偏移地址 TYPE 运算符 : 运算结果是一个数值 LENGTH运算符。如果一个变量已用重复操作符DUP 说明其变量的个数,则利用LENGTH 运算符可得到这个变量的个数。如果未用DUP 说明,则得到的结果总是1。 SIZE 运算符。如果一个变量已用重复操作符DUP 说明,则利用SIZE 运算符可得到分配给该变量的字节总数。如果未用DUP 说明,则得到的结果是TYPE 运算的结果。 合成运算符:用来建立或临时改变变量或标号的类型或存储器操作数的存储单元类型 PTR 运算符:指定或修改存储器操作数的类型。 SHORT运算符:指定一个标号的类型为S
24、HORT( 短标号 ),即标号到引用该标号指令之间的距离在- 128+127 个字节的范围内。5.2 伪指令:给汇编程序的命令,如定义数据、分配存储区、定义段等,在汇编过程中起控制或指示作用。数据定义伪指令:DB,DW ,DD,DF,DQ,DT 变量名 伪指令定义符操作数 ,操作数 符号定义伪指令1、EQU 格式:名字EQU 表达式段定义伪指令在汇编语言中定义逻辑段,常用的段定义伪指令有SEGMENT/ENDS、ASSUME 5.3 DOS 系统功能调用DOS 功能调用,分为以下四个主要方面:(1) 磁盘的读 /写及控制管理。精选学习资料 - - - - - - - - - 名师归纳总结 -
25、- - - - - -第 9 页,共 10 页学习必备欢迎下载(2) 内存管理。 (3) 基本输入 /输出管理 (如键盘、打印机、显示器等)。(4) 其他管理 (如时间、日期等)。对于所有的功能调用,使用时一般需要经过以下三个步骤:(1) 子程序的入口参数送相应的寄存器。(2) 子程序编号送AH 。(3) 发出中断请求:INT 21H( 系统功能调用指令)。1)1 号功能调用(键入并显示一个字符)调用格式: MOV AH ,1 INT 21H 2)2 号功能调用(显示器显示一个字符)调用格式:MOV DL ,待显示字符的ASCII 码, (或者单引号引上要显示的字符,如A)MOV AH,2 INT 21H 3)9 号功能调用(显示器显示字符串)调用格式: MOV DX,待显示字符串首字符的偏移地址MOV AH,9 INT 21H 4)4C 号功能调用(程序运行结束、返回操作系统)调用格式:MOV AH ,4CH INT 21H 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 10 页,共 10 页