资源描述:
《第三章PART2-ARM汇编编程之伪指令ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、CollegeofComputerScience&Technology第三章ARM汇编编程鲁东大学LUDONGUNIVERSITYARM汇编语言伪指令(Directives)什么是伪指令:由汇编器提供的指令,指导汇编程序对代码进行汇编,辅助编程人员进行汇编编程机器指令(Instructions)运行期间由机器执行伪指令(Directives,Pseudo)-由汇编器处理①汇编语言指示符-指示汇编器进行相应的操作②操作伪指令-汇编器汇编成对应机器指令鲁东大学LUDONGUNIVERSITY伪指令举例AREAThumbSub,CODE,READONLYENTRYCODE32;ARMhea
2、derADRr0,start+1CODE16;Thumb.startMOVr0,#10doaddMOVpc,lrEND汇编控制伪指令鲁东大学LUDONGUNIVERSITYARM汇编语言伪指令杂项伪指令报告伪指令操作伪指令数据定义伪指令符号定义伪指令鲁东大学LUDONGUNIVERSITY符号定义伪指令符号定义指令(Symboldefinitiondirectives):用于定义ARM汇编程序中的变量(实为常量),可进行重新赋值。GBLA,GBLL,GBLSLCLA,LCLL,LCLSSETA,SETL,SETS鲁东大学LUDONGUNIVERSITY全局变量声明GBLA,GBLL,
3、GBLS--声明一个全局的算术、逻辑和串变量有效作用范围:Thescopeofthevariableislimitedtothesourcefilethatcontainsit.DirectivesVariableTypeInitialValueGBLAarithmetic0GBLLlogical{FALSE}GBLSstring""鲁东大学LUDONGUNIVERSITY变量赋值SETA,SETL,SETS--给一个算术、逻辑、串变量赋值Example:GLBAaGLBSabcGLBSdefaSETA256*256abcSETS"thisstringcontainsonlyone"
4、"doublequote"defSETS"thisstringcontainsonlyone$$dollarsymbol"鲁东大学LUDONGUNIVERSITYExampleGBLAVersionNumberVersionNumberSETA21GBLLDebugDebugSETL{TRUE}GBLSVersionStringVersionStringSETS"Version1.0"鲁东大学LUDONGUNIVERSITY局部变量声明LCLA,LCLL,LCLS--声明一个局部的算术、逻辑、串变量有效作用范围:Thescopeofthevariableislimitedtoapar
5、ticularmacrothatcontainsit.DirectivesVariableTypeInitialValueLCLAarithmetic0LCLLlogical{FALSE}LCLSstring""鲁东大学LUDONGUNIVERSITYExampleMACRO;Declareamacro$labelmessage$a;MacroprototypelineLCLSerr;DeclarelocalstringvariableerrSETS"errorno:";SetvalueoferrMEND鲁东大学LUDONGUNIVERSITY数据定义伪指令数据定义指令(Datade
6、finitiondirectives):用于进行数据空间分配。SPACEDCBDCD,DCDUMAP,FIELD鲁东大学LUDONGUNIVERSITYSPACETheSPACEdirectivereservesazeroedblockofmemory.分配一块内存单元,并用0初始化。ExampleAREAMyData,DATA,READWRITEdata1SPACE255;defines255bytesofzeroedstore鲁东大学LUDONGUNIVERSITYDCBTheDCBdirectiveallocatesoneormorebytesofmemory,anddefin
7、estheinitialvaluesofthememory.分配一段字节内存单元,并用伪指令中的expr初始化。Syntax:{label}DCBexpr{,expr}...ExampleDISPTABDCB0x33,0x43,0x76ERRSTRDCB“Senddataiserror!”,0鲁东大学LUDONGUNIVERSITYDCD,DCDUTheDCDdirectiveallocatesoneormorewordsofmemory,alignedo