处理器控制与杂项操作指令课件.ppt

上传人:牧羊曲112 文档编号:4031621 上传时间:2023-04-01 格式:PPT 页数:18 大小:112KB
返回 下载 相关 举报
处理器控制与杂项操作指令课件.ppt_第1页
第1页 / 共18页
处理器控制与杂项操作指令课件.ppt_第2页
第2页 / 共18页
处理器控制与杂项操作指令课件.ppt_第3页
第3页 / 共18页
处理器控制与杂项操作指令课件.ppt_第4页
第4页 / 共18页
处理器控制与杂项操作指令课件.ppt_第5页
第5页 / 共18页
点击查看更多>>
资源描述

《处理器控制与杂项操作指令课件.ppt》由会员分享,可在线阅读,更多相关《处理器控制与杂项操作指令课件.ppt(18页珍藏版)》请在三一办公上搜索。

1、3.3.6处理器控制与杂项操作指令,1.标志处理指令CLC(clear carry)进位位置0指令 CF 0CMC(complement carry)进位位求反指令 CF CFSTC(set carry)进位位置1指令 CF 1CLD(clear direction)方向标志位置0指令 DF 0STD(set direction)方向标志位置1指令 DF 1CLI(clear interrupt)中断标志置0指令 IF0STI(set interrupt)中断标志置1指令 IF 1,2.其他处理机控制与杂项操作指令NOP 无操作HLT 停机ESC 换码LOCK 维持总线封锁BOUND 检查数组

2、上下界ENTER 建立堆栈帧LEAVE 释放堆栈帧第三章作业:16个题,交作业最晚的时间9月26日 3.4 3.6 3.8 3.13 3.15 3.16 3.17 3.18 3.21 3.22 3.23 3.27 3.29 3.34 3.38 3.49,第四章 汇编语言程序格式,4.1 汇编程序的功能4.2 伪操作4.3 汇编语言程序格式,4.1 汇编程序功能,使用汇编语言编程,上机运行的过程:(1)用编辑程序建立ASM源程序文件;(2)用MASM程序把ASM源程序文件转换成OBJ目标程序文件;(3)用LINK程序把OBJ文件转换成EXE文件;(4)用DOS命令直接键入EXE文件名,就可以执行

3、该文件。MASM程序就是汇编程序,它的主要功能是:(1)检查源程序。(2)测出源程序中的语法错误,并给出出错信息。(3)产生源程序的目标程序,并给出LST列表文件。(4)展开宏指令。,4.2 伪 操 作,伪操作用于:(1)处理器的选择(2)段定义(3)程序的开始和结束(4)数据定义和存储器分配(5)其他杂项,4.2.1 处理器选择伪操作,处理器选择,实质是指令系统选择。放在程序的最前面。此类指令有:.8086.286.286P;指包含特权指令的指令系统,下同.386.386P.486.486P.586.586P,4.2.2 段定义伪操作,1)完整的段定义伪操作格式:segment-name S

4、EGMENT.Segment-name ENDSSEGMENT 的后边没有家类型及属性,是一般格式。教材中介绍了加有定位属性、组合属性、使用类型、类别名,等。见P119 例4.1 有三个段的定义,其中使用的是一般格式。,以上段结构的定义用到段名,data-seg1、data-seg2、code-seg等,段名具有段的起始地址属性,程序中要用到段地址,段地址应存放到段寄存器中,用ASSUME伪指令确定段与段寄存器之间的对应关系,其格式:ASSUME 段寄存器名:段名,段寄存器名:段名例4-1中 assume cs:code-seg,ds:data-seg1,es:data-seg2,段的定义也可

5、用简化的形式:.CODE name;段名可选,多个代码段是必选;不同的段名.DATA;定义初始化数据段.DATA?;定义未初始化数据段.FARDATAname;定义远初始化数据段,可指定 段名,如不指定段名,则将以FAR-DATA命名.FARDATA?name;定义远未初始化数据段,可指 定段名,如不指定,则将以FAR-BSS命名.CONST;定义常数段.STACKsize;定义堆栈段,可指定大小,如;不指定,则默认值为1KB,还可用.MODE伪操作定义存储模型,即数据段与代码段之间的存储关系,选择不同参数,定义不同的存储模型。表4.1 列出对于.MODE伪操作不同的参数对应段默认属性。见P1

6、23124,4.2.3 程序开始和结束伪操作,程序开始伪操作:定义程序模块名NAME modle-nameTITLE text如不选以上方式,则模块名采用源程序文件名。源程序结束伪操作:ENDlabel;label标号指示程序开始执行的地址。MASM6.0版提供了程序初始入口点和退出程序伪操作:.STARTUP;设入口点,可省END后入口;.EXIT return-value;退出时可选择一个返回值,常用0作返回值。,4.2.4 数据定义及存储器分配伪操作,这一类伪操作的格式:变量名 伪操作助记符 操作数,操作数;注释变量名是可选项,拼写规则在4.3节名字项定义。操作数可有多个,给出方式也多样

7、,请看例题4.74.16注释内容是有关指令和程序的说明,有助于对指令和程序的理解,增加可读性。助记符:DB、DW、DD、DF、DQ、DT,具体的数据定义和存储分配功能,请参看例题4.74.16,讲解例题4.74.16,4.2.5 表达式赋值伪操作EQU、=,EQU和=都是定义符号的;CONSTANT EQU 26DATA EQU HEIGHT+12;地址表达式赋以符号名ALPHA EQU 7;7赋以符号名BETA EQU ALPHA-2;BETA就是5的符号名ADDR EQU VAR+BETA;VAR+5赋以符号ADDRB EQU BP+8;把变址引用赋以符号名BP8 EQU DS:BP+8;

8、段跨越的变址引用赋以 符号名P8,=伪操作也有EQU的功能,它们的区别是,EQU不能对同一符号名重复定义;但=伪操作可以对一个符号名做重复定义,如:EMP=7 EMP=EMP+1,4.2.6 地址计数器和对准伪操作,1.地址计数器$汇编程序对源程序进行汇编的过程中,用地址计数器(location counter)保存正在汇编的指令的偏移地址,每当对一个段开始汇编时,地址计数器就被初始化为0,每处理一条指令,地址计数器就增加一个值,即该指令的字节数。地址计数器的值可以用$来表示,借此使用地址计数器的值。如JNE$+6;$代表本指令的首地址,$+6是另一条指令的首地址。在分配数据存储单元时,地址计

9、数器的值总是代表正待分配的存储单元的首地址,程序中用$来表示,见例4.17ARRAY DW 1,2,$+4,3,4,$+4,2.ORG 伪操作ORG 常数表达式把地址计数器的值设定为常数表达式的值;既是待分配的起始地址。(例题)3.EVEN伪操作使变量或指令开始于偶地址,(例题)4.ALIGN伪操作ALIGN boundary用该伪操作设置待分配的地址从boundary的倍数开始,boundary必须是2的幂次数,即2、4、8、为了保证数组的起始边界的正确,可用ALIGN伪操作,(例题),4.2.7 基数控制伪操作,汇编程序默认的基数为十进制数,其它进制的数就要进行标记,用B、H、O/Q、DRADIX伪操作可以把默认的基数改变为2、10、8、16进制中的任何一个。格式:RADIX expression(例题),4.3 汇编语言程序格式,语句含4项:,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号