51单片机汇编语言中的 $ 代表啥意思?

2024-12-11 18:45:46
推荐回答(5个)
回答1:

代表当前的指令所在的地址
举个例子来说,在0050H处定义了几个字节数据
0050H:01H,02H,03H,04H
那么下一条指令的地址应该为0054H,若下一条语句为
COUNT EQU $-0050H,则COUNT就等于4(0054H-0050H),但是一般 编程的时候是不知道数据定义在哪里的,所以你并不知道$的具体值是多少,因为0050H是用标号来表示的,比如说用了TABLE,那么你的语句 COUNT EQU $-TABLE一样可以得到数据块的长度4.

回答2:

  汇编语言中 $代表当前指令的地址;
  如:
  data segment
  str1 db a,b,c,d
  leng equ $-str
  这里的就是当前地址减去str1的初始地址,即可得到str1的长度。 在字符串中是结束标志,就是字符串遇到$才会结束,类似于c语言中字符串中结尾的'0'。

回答3:

一般表示当下执行指令的地址,如JNB P1.0,$ 就表示P1.0为0时反复执行本指令(就是等待)当它为1时才开始执行下一条指令。。。

回答4:

DELY: SJMP $ 就是一直在执行这个语句,不调到其他的程序,直到来了中断。

回答5:

代表当前指令的所在地址