欢迎来到天天文库
浏览记录
ID:49282896
大小:339.00 KB
页数:55页
时间:2020-02-03
《大学计算机硬件技术基础教程第四章.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、汇编程序设计8086汇编语言的基本语法伪指令程序设计系统功能调用汇编程序设计STACKSEGMENTPARASTACK‘STACK’DB50DUP(0)STACKENDSDATASEGMENTSTRINGDB‘WELCOMETOUSE’DB‘8086ASSEMBLER!'DB0DH,0AH,‘$'DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATAASSUMESS:STACKSTART:MOVAX,DATAMOVDS,AXMOVAH,9MOVDX,OFFSETSTRINGINT21HLEABX,STRINGLOOP1:CMPBYTE
2、PTR[BX],'$'JELOOP2MOVAH,5MOVDL,[BX]INT21HINCBXJMPLOOP1LOOP2:MOVAH,4CHINT21HCODEENDSENDSTART例:显示并打印输出“WELCOMETOUSE8086ASSEMBLER!”汇编程序设计特点:1。由堆栈段,数据段,附加段,代码段组成。2。SEGMENT开始,ENDS结束3。一行写不下,用&连接4。;后是注释5。指令性语句[标号:]操作助记符操作数[;注释]指示性语句[名字]定义符参数,。。。。。。[注释]汇编程序设计汇编语言程序目标程序汇编汇编程序连接程序连接执行程序编辑程序编辑
3、源程序汇编程序设计数据项1。常数2。变量:通常是存放在某些存储单元的数据,这些数据在程序运行期间可以修改。通常变量名出现在程序中,代表存储单元的地址。变量也可以定义一个数据区或存储区,此时该变量名表示该区的第一个单元。三种属性:段属性,偏移属性,类型属性。3。标号:表示一条指令所在的地址,是指令语句的地址符号,常用作转移指令的操作数,即目标地址。属性:段属性,偏移属性,距离属性(NEAR,FAR)。汇编程序设计伪指令机器指令(指令性语句):微处理器的各种符号指令,在汇编过程中被翻译成相应的目标代码,连接后计算机可执行的机器指令代码。指式性语句:包括伪指令语句,
4、宏指令语句伪指令:汇编时被解释执行的语句。汇编程序设计一。数据定义及存储器分配伪指令DB字节,DW字,DD双字,DQ4字,DT10字节DATADB10,4,10HDATA1DW100,100H,-5DATA2DD3*20,0FFFDHSTRINGDB‘ABCD’STRINGDW‘AB’汇编程序设计CDB100DUP(0)TABDB100DUP(5DUP(1),2)汇编程序设计二。符号定义伪指令1。等值伪指令格式:符号名EQU表达式功能:将表达式的值赋给符号名ALFAEQU100COUNTEQUALFAPORTAEQU56H注意:符号名被EQU赋值后,不能再赋值
5、。汇编程序设计2。等号伪指令格式:符号名=表达式功能:将表达式的值赋给符号名ALFA=100MOVAL,ALFAALFA=ALFA+2MOVAL,ALFA汇编程序设计3。段定义伪指令格式:段名SEGMENT[定位类型][组合类型][‘类别名’]。。。段名ENDS汇编程序设计4。段寄存器说明伪指令格式:ASSUME段寄存器:段名[,段寄存器:段名。。。。。。]功能:指示各逻辑段使用寄存器的情况,并没有填充段寄存器的内容.也可取消段寄存器与之对应的关系例题:ASSUMEDS:NOTHINGASSUMEDS:DATAMOVAX,DATAMOVDS,AX汇编程序设计5
6、。模块定义伪指令模块开始伪指令格式:NAME模块名功能:指明程序模块的开始,并指出模块名模块结束伪指令格式:END启动标号或过程名功能:表示一个模块的结束汇编程序设计例题:START:MOVAX,DATAMOVDS,AX。。。。。。ENDSTART汇编程序设计三。运算符1。算术运算符+,-,*,/,求余数(MOD),左移(SHL),右移(SHR)例题CONT=15*4CONT=CONT/8CONT=CONTMOD3MOVAL,21HSHL2;AL=84H汇编程序设计注意:除了+,-,其余的只能用于常数,而且+,-也要有明确的意义。例题:要求把首地址为BLOCK
7、的字数组的第五个字传送到DX中MOVDX,BLOCK+(5-1)*2汇编程序设计2。逻辑运算符AND,OR,NOT,XOR注意:与逻辑指令的区别一个在操作数中,一个在操作码中一个由汇编程序执行,一个由机器执行。例题:ANDDX,PORTANDOFEH汇编程序设计3。关系运算符EQ(相等),NE(不等),LT(小于),GT(大于),LE(小于等于),GE(大于等于)功能:关系成立结果为0FFFFH,不成立,结果为0例题:MOVBX,PORTLT5MOVBX,((PORTLT5)AND20)OR((PORTGE5)AND30)汇编程序设计4。分析操作符取地址偏移量
8、格式:OFFSET变量名或标号功能:取
此文档下载收益归作者所有