当前位置:谷粒网 > 生活妙招 > 正文

ERQ(程式指令)

作者:赵颂鸣 生活妙招 2023-04-09 19:53:19 阅读:23

符号名EQU

<表达式>

有时,一个表达式在程式中会多次出现,重複书写可能较为繁杂,易出错。另一方面。如果要对该表达式进行变动,那幺必须在程式中找到每一个表达式,一一做出修改,稍有不慎,就会遗漏,引出麻烦。利用EQU伪指令,就可以避免这些问题的发生。

基本介绍

中文名:ERQ类型:程式指令EQU与“=”:EQU伪指令符号名不能重複再定义EQU与DATA:EQU的作用相当于C语言中常量定义

格式

该伪指令的含义是为EQU后面的<表达式>起一个叫做<符号名>的名字。这样一来,程式中凡是需要用到该表达式的地方,就都可以用这个名字代替了。这里,<表达式>可以是任何有效的数据,可以是能够算出值的表达式,也可以是有效的助记符等。equ伪指令并不为符号分配空间,编译器将equ符号直接替换为其值,作为指令中的立即数。例 COUNT EQU 256表示赋予数256一个名字,叫做COUNT。VAR1 EQU COUNT-2表示赋予表达式COUNT-2一个名字,叫做VAR1。如果有“COUNT EQU 256”在先,那幺由于COUNT是数值256,所以VAR1就代表数值254。PH EQU PUSH表示赋予PUSH一个名字PH。由于PUSH是彙编语言的一个助记符,因此,在程式中书写PH AX,就相当于 PUSH AX。

EQU与伪指令“=”的区别

它们的区别是:由EQU伪指令定义后的符号名是不能重複再定义的,而“=”伪指令中定义的符号名可重複定义。例如:EMP=7┋EMP=EMP+2这表示,开始把符号名EMP定义为是数值7,后来把符号名EMP重新定义为代表数值9。但是不能写成:EMP EQU 7┋EMP EQU EMP+2

EQU与DATA的区别

EQU的作用相当于C语言中常量的定义,如SIN1 EQU 0X7814看见SIN1的时候就等于看到了0X7814. 两者完全等价,所以使用时既可以作为地址也可以作为数据使用,看你做什幺用了。而DATA 的作用是定义数据存储器地址的指令,比如AAA DATA 50H意思就是将地址50H赋给 AAA。

51彙编的EQU不支持大于16位的常量定义

如:MOV TL1,#256-FOSC/12/32/BAUDRATEMOV TH1,#256-FOSC/12/32/BAUDRATE结果会发现表达式并不能传递一个準确的数值给TL1,TH1。EQU定义的常量不能大过65535(2的16次方),把高过16位的略去一算,果然就是传进去的数值。

版权声明:本文内容由用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。转载请注明出处:https://www.gulizw.com/guli/72372.html

网友评论

  • 随机文章

  • 热门文章

  • 最新文章