版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
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补码:反码末位(包括小数)加17.2由原码直接求补码:二进制数低位(包括小数)的第一个
3、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.8086组成:4个16位段寄存器(CDSE);16位指令指针寄存器IP;20位地址加法器及总线控制电路;6个字节指令
4、队列缓冲器2.1 指令指针寄存器:存放下一条要读取的指令在代码段中的偏移地址。由CS和IP 的内容决定程序的执行顺序。 地址加法器:将段寄存器和指令指针寄存器的内容相加,得到20位的物理地址。 指令队列缓冲器:086的指令队列有6个字节,当指令队列出现2个空字节,BIU就自动执行一次取指令周期,将下一条要执行的指令从内存单元读入指令队列。3. 执行单元EU: 负责指令的译码执行 组成;通用寄存器:AX、BX、CX、DX,SP、BP,SI、DI16位标志寄存器FLAGS:存放CPU运算的状态特征和控制标志16位算术运算单元ALU:进行算术及逻辑运算EU控制电路:接收指令,实时操作。通用寄存器数据
5、寄存器DLDHCLCHBLBHALAH指针寄存器BP基地址指针SP堆栈指针变址寄存器DI目的变址SI源变址控制寄存器FLAGS状态标志IP指令指针ES 附加段寄存器DS 数据段寄存器SS 堆栈段寄存器CS 代码段寄存器段寄存器AXBXCXDX状态标志:表示处理器当前的运行状态。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.存储器的分段管理逻辑段只有四种类型:CS、DS、SS、ES,可分开、连接或重叠逻辑段只能开始于物理地址低四位全为0的物理地址处物理地址:存储器的绝对地址,从00000H0FFFFFH,是CPU访问存储器的实际寻址地址(也称为绝对地址)。(20位)逻辑地址记为:段基址
7、:偏移量(16位)物理地址=段基址左移4位偏移量物理地址=段基址16 偏移量对于一个确定的存储单元,逻辑地址不唯一,物理地址唯一。5. 总线操作和工作时序 总线操作:微处理器通过总线来进行取指令、存取操作数等操作工作时序:指令译码以后按时间顺序产生的确定的控制信号。时钟周期:时钟脉冲信号的一个循环时间,又称为一个“T”状态,是微处理器工作的最小时间单位。 指令周期:执行一条指令所需要的时间。总线周期:完成一次对存储器或I/O端口的操作所需要的时间。第三章1.寻址方式: 指令指定操作数的位置,即给出地址信息,执行时根据这个地址信 息找到需要的操作数。这种寻找操作数的过程称为寻址,而寻找操作数的方
8、法, 称为寻址方式。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、SS2.2寄存器间接寻址方式:EA通过寄存器间接给出。寄存器的内容就是偏移地址。 可以
9、表示EA的寄存器有4个BP、BX、SI、DI 注意:利用BX,SI,DI进行间接寻址时,如果指令前面没有用前缀指令指明 段寄存器,则寻址时默认的段寄存器是数据段寄存器DS; 利用BP进行间接寻址时,如果指令前面没有用前缀指令指明 段寄存器,默认的段寄存器是堆栈寄存器SS.2.3寄存器相对寻址方式 : EA是寄存器和立即数的和。2.4基址变址寻址方式 :EA是基址寄存器(BP或BX)和变址寄存器(SI或DI)和2.5相对基址变址寻址方式:EA是基址寄存器、变址寄存器和立即数的和。寻址方式源操作数格式使用段寄存器指令举例立即数寻址data(CS)MOV AX,1064H寄存器寻址reg无MOV A
10、H,AL直接寻址dataDSMOV AX,1064H 存储器寻址 寄存器间接寻址SI、DI、BXBPDSSSMOV AX,SI寄存器相对寻址BX+dispSI+dispDI+dispBP+dispDSDSDSSSMOV AX,BX+1064H基址变址寻址BX+SI BX+DIBP+SI BP+DIDSDSSSSSMOV AX,BXSI相对基址变址寻址BX+SI +dispBX+DI +dispBP+SI +dispBP+DI +dispDSDSSSSSMOV AX,BXDI+1064H2.6 I/O端口寻址方式: 当操作数在外部设备时,使用专门的I/O指令:输入指令 IN 和 输出指令 OUT
11、 当端口地址可以用一个字节(低256个端口)表示时,可直接也可间接寻址,高于256的I/O端口必须间址。输入指令中目的操作数只能为AL或AX;输出指令中源操作数只能为AL或AX。3. Mov操作指令小结立即数只能作源操作数目的操作数可以是寄存器或者各种寻址的内存单元。不可以是立即数、IP、CS。目的操作数与源操作数必须类型一致,或者同为字,或者同为字节对于存储器单元与立即数同时作为操作数的情况,必须显式指明,(因为此时立即数可以看做字也可看做字节数)用byte ptr指示字节类型,用word ptr指示字类型。段寄存器的操作有一些限制:不允许立即数传送给段寄存器;不允许段寄存器之间的直接数据传
12、送;CS不允许做目的操作数,因为这样直接改变CS值,将引起程序执行混乱。如果指令有两个操作数,不允许两个都是存储器数。上述四类格式以外的指令必定是非法指令。“MOV”指令不改变源操作数,不影响标志位 堆栈指令小结堆栈操作是字操作指令,不要写出“PUSH AL”等。在“POP”指令中,“POP CS”为非法指令。堆栈中的数据弹出后,数据并没有在堆栈中消失,除非压入新数据。堆栈操作指令不影响标志位。 数据交换指令小结操作数不能为立即数;源操作数和目的操作数不能同时为存储单元;段寄存器不能作为操作数;交换指令不影响标志。换码指令XLAT 指令格式:XLAT ;执行操作:ALDS16+BX+AL;1)
13、 IN 输入指令指令格式:IN AL/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
14、ES):同上 标志寄存器传送指令共有4条标志传送指令,都为 单字节指令,指令的操作数为隐含形式。1)取标志指令LAHF(Load AH from Flags) 格式:LAHF2)置标志指令SAHF(Store AH into Flags) 格式:SAHF3)标志压入堆栈指令PUSHF (PUSH Flags onto stack)格式: PUSHF 操作:SPSP2;SP+1,SPFLAGS(4)标志弹出堆栈指令POPF( POP Flags off stack ) 格式:POPF 操作:FLAGSSP+1,SP;SPSP+2 3.3.2 算术运算指令乘法指令:1)无符号数乘法指令MUL (M
15、ULtiplication unsigned 2)带符号数的乘法IMUL (Integer MULtiplication除法指令:1)无符号数除法指令DIV (DIVision unsigned)2)带符号数除法指令IDIV (Integer DIVision)除数只能是被除数的一半被除数为16位时,除数应该为8位;被除数为32位时,除数应该为16位。指令指定的是除数,被除数是隐含的。如除数为字节,则被除数为AX,所得8位商存入AL,余数存入AH;如除数类型为字,则被除数为DX:AX,所得16位商存入AX,余数存入DX符号扩展指令:若被除数和除数字长相等,在做IDIV之前,必须先用符号扩展指令
16、CBW、CWD将被除数的符号位扩展,使之成为16位数或32位数。 正数的符号位为零,在高位全添上零;负数的符号位为1,高位全添上1。保证原数据的大小和符号不变。字节扩展指令CBW 格式:CBW操作: 将AL的符号位扩展到AH,AL扩展成AX当(AL)的最高有效位为0时(AH)= 00H当(AL)的最高有效位为1时(AH)= FFH字扩展指令CWD (Convert Word to Double word)格式:CWD操作: 将AX的符号位扩展到DX,AX扩展成DX,AX当(AX)的最高有效位为0时(DX)= 00H当(AX)的最高有效位为1时(DX)= FFH 3.3.3逻辑运算和移位指令1)
17、逻辑“与”指令AND (logical AND) 相当于乘 指令格式及操作: AND dst,src ;(dst)(dst)(src)目的操作数:寄存器、存储器源操作数:立即数、寄存器、存储器操作对象可以为字节、可以为字!2)逻辑“或”指令OR (logical inclusive OR) 3) 逻辑“非”运算NOT (logical NOT) 相当于取反 操作数可以是8位或16位寄存器或存储器,但不可以是立即数!不影响任何状态标志位!4)逻辑“异或”指令XOR (logical eXclusive OR)指令格式及操作:XOR dst,src ;(dst)(dst) (src)5)测试指令T
18、EST(TEST or non-destructive logical AND)指令格式及操作:TEST dst,src ;(dst)(src)指令格式及运算均与AND指令相同 ,但是不保留运算结果,即不影响目的操作数,只根据运算结果设置标志。2.移位指令 逻辑左移SHL算术左移SAL逻辑右移SHR算术右移SAR3,.控制移位指令 汇编语言程序设计5.1.2 汇编语言语句的类型和格式1、语句的类型指令语句:能产生目标代码,CPU可以执行的能完成特定功能的语句伪指令语句不产生目标代码,仅在汇编过程中起控制作用或指示作用2、语句的格式字名 助记符 操作数 字名:指令语句中,名字是一个标号,实质上是
19、指令的符号地址助记符:指令语句中助记符有90多种操作数:指令语句:单操作数、双操作数、无操作数伪指令语句:操作数不定,有多个操作数时需使用逗号隔开操作数类型:常数 寄存器 标号 表达式表达式中常用的运算符: 算术运算符:+(加),(减),*(乘),/(除)和MOD(模除,即两个整数相除后取余数) 逻辑运算符:AND(逻辑“与”),OR(逻辑“或”),XOR(逻辑“异或”)和NOT(逻辑“非”) 关系运算符: EQ(等于),NE(不等),LT(小于),GT(大于),LE(小于或等于),GE(大于或等于)等 分析运算符 SEG运算符:得到一个标号或变量所在段的段地址 OFFSET运算符:得到一个标
20、号或变量的偏移地址 TYPE运算符: 运算结果是一个数值 LENGTH运算符。如果一个变量已用重复操作符DUP说明其变量的个数,则利用 LENGTH 运算符可得到这个变量的个数。如果未用DUP说明,则得到的结果总是1。 SIZE运算符。如果一个变量已用重复操作符DUP说明,则利用SIZE 运算符可得到 分配给该变量的字节总数。如果未用DUP说明,则得到的结果是TYPE运算的结果。 合成运算符:用来建立或临时改变变量或标号的类型或存储器操作数的存储单元类型 PTR运算符:指定或修改存储器操作数的类型。 SHORT运算符:指定一个标号的类型为SHORT(短标号),即标号到引用该标号指令之间的距离在
21、128+127个字节的范围内。5.2 伪指令:给汇编程序的命令,如定义数据、分配存储区、定义段等,在汇编过程中起控制或指示作用。数据定义伪指令:DB,DW,DD,DF,DQ,DT变量名 伪指令定义符 操作数,操作数符号定义伪指令1、EQU格式:名字 EQU 表达式段定义伪指令在汇编语言中定义逻辑段,常用的段定义伪指令有SEGMENT/ENDS、ASSUME5.3 DOS系统功能调用DOS功能调用,分为以下四个主要方面: (1) 磁盘的读/写及控制管理。 (2) 内存管理。 (3) 基本输入/输出管理(如键盘、打印机、显示器等)。 (4) 其他管理(如时间、日期等)。对于所有的功能调用,使用时一
22、般需要经过以下三个步骤: (1) 子程序的入口参数送相应的寄存器。 (2) 子程序编号送AH。 (3) 发出中断请求:INT 21H(系统功能调用指令)。1)1号功能调用(键入并显示一个字符)调用格式:MOV AH,1 INT 21H2)2号功能调用(显示器显示一个字符)调用格式: MOV DL,待显示字符的ASCII码, (或者单引号引上要显示的字符,如A) MOV AH,2 INT 21H3)9号功能调用(显示器显示字符串)调用格式:MOV DX,待显示字符串首字符的偏移地址 MOV AH,9 INT21H4)4C号功能调用(程序运行结束、返回操作系统)调用格式: MOV AH,4CH INT 21H
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年度豪华轿车4S店试驾体验协议3篇
- 2024年某商场黄金地段租赁协议范本版
- 2024年班组施工劳务建筑抗震加固工程合同2篇
- 2024塑胶运动场工程投资回报与风险分担合同2篇
- 2024年度光缆线路施工与维护一体化服务合同3篇
- 2024年工程项目推广与佣金协议3篇
- 2024年度婚礼堂婚礼策划咨询服务合同2篇
- 六安职业技术学院《现代酒店管理》2023-2024学年第一学期期末试卷
- 2024年塔吊司机劳动保障与安全操作规范协议2篇
- 2024年度商品买卖合同退货退款诉讼2篇
- 马克思主义新闻思想智慧树知到课后章节答案2023年下河北大学
- 住宅小区电气智能化设计研究
- 华文版书法五年级下册 第9课 集字练习-集思广益 教案
- 人教版四年级数学上册四年级数学上册典型例题系列之第4单元:“买几送几”促销问题专项练习(解析版)人教版
- 学校(幼儿园)食堂餐厨废弃物处理记录表
- 诸葛亮人物介绍PPT
- 高性能计算云(HPC Clound)服务白皮书 2022
- 青岛科技大学互换性与技术测量期末复习题
- 高级教师职称面试讲课答辩题目及答案(分五类共60题)
- 建立完善安全生产风险分级管控和隐患排查治理双重预防机制建设实施方案
- 电焊条生产工艺知识大全
评论
0/150
提交评论