汇编语言中$符号的意思是什么?

汇编语言中$符号的意思是什么?,第1张

看图你就会明白。实际上标号X1的首地址为ASCII码C的字单元地址,X2的首地址开始于 DB 16 dup () 语句,紧接着X1的终止地址,那么它的首地址相对于X1偏移4 - 1个字节单元;X2的终止地址相对于其首地址偏移16 - 1个字节单元,相对于X1偏移18个字节单元。那么$ - X1实际上是当前地址与X1首地址之差。由此可以得出,mov BX, Y指令执行后,BX的值为18d,也就是12h。

| …… |

| 43h | ASCII: C 4 byte X1

| 00h |

| 44h | ASCII: D

| 00h |

| | 16 byte X2

……

| | <--- $

| …… |

(当前地址$与X1首地址之差为18个字节偏移,等同于X1与X2占有的字节单元,不包括X1的首地址和X2的终止地址)

关于伪指令$,它表示地址计数器的当前值,也就是本条指令第一个字节的地址偏移,如:

ORG $ + 8 表示起始地址定位于当前编译地址第一字节的后8个字节处;JMP $ 表示无条件转移至当前地址,其实际执行效果为永远停留在当前地址。

又如:Array DW 1, 2, $ + 4, 3, 4, $ + 4,可以用图表示为:

| …… |

| 01h | <--- Array 1

| 00h |

| 02h | 2

| 00h |

| 08h | $ + 4 ($相对于Array首地址的偏移是4,因此$ + 4 = 8h)

| 00h |

| 03h | 3

| 00h |

| 04h | 4

| 00h |

| 0eh | $ + 4 ($相对于Array首地址的偏移是10,因此$ + 4 = 0eh)

| 00h |

| … … |

可见,$用在不同的地方,其表示的当前地址计数是不同的。

表示原地空转,一般与跳转指令相连用 如51 I汇编中,ajmp $表示程序就停在当前位置,相当于\x0d\L1: AJMP L1 \x0d\\x0d\举例应用:\x0d\如果一个程序只在中断跑,主程序没有东西可执行的东东,而这时主程序又不能停,此时就用 ajmp $,那么此时主程序就在该处原地不动,单步调试时可以看到就在原地走。这是只要中断条件到就执行中断。

“$”是汇编语言中的一个预定义符号,等价于当前正汇编到的段的当前偏移值。例如eg:指令“jmp $+3”中的“$”表示当前这条指令在代码段中的偏移量。

汇编语言, 即第二代计算机语言,用一些容易理解和记忆的字母,单词来代替一个特定的指令,比如:用“ADD”代表数字逻辑上的加减,“ MOV”代表数据传递等等,通过这种方法,人们很容易去阅读已经完成的程序或者理解程序正在执行的功能。

扩展资料:

语言特点

汇编语言是计算机提供给用户的最快最有效的语言,也是能够利用计算机的所有硬件特性并能够直接控制硬件的唯-语言。但是由于编写和调试汇编语言程序要比高级语言复杂,因此目前其应用不如高级语言广泛。

汇编语言比机器语言的可读性要好,但跟高级语言比较而言,可读性还是较差。不过采用它编写的程序具有存储空间占用少、执行速度快的特点,这些是高级语言所无法取代的。在实际应用中,是否使用汇编语言,取决于具体应用要求、软件开发时间和质量等方面作权衡。

汇编器

典型的现代汇编器(assembler)建造目标代码,由解译组语指令集的易记码(mnemonics)到操作码(OpCode),并解析符号名称(symbolic names)成为存储器地址以及其它的实体。

使用符号参考是汇编器的一个重要特征,它可以节省修改程序后人工转址的乏味耗时计算。基本就是把机器码变成一些字母而已,编译的时候再把输入的指令字母替换成为晦涩难懂机器码

- $ (汇编语言中字符串结束的标志)

有符号的数第一个位是符号位,0代表正数,1代表负数,其余位用补码表示,可以表示正负数。无符号的数第一个位不是符号位,也就是说只能表示正数

比如说随便举个简单的例子:10101010,如果是有符号数,那么换算成十进制就是-86,如果是无符号数,那么换算成十进制就是170

十六进制一般跟着个H,八进制则跟着个O,十六进制有0-9,A-F,八进制只有0-7

XXH和XXXXH有区别,一个是16位,一个是32位

简单来说,就是把最高位扩展到要求的位数

比如85h(-123)是8位的(最高位为1),如果要求扩展到16位,就是0ff85h(-123)

比如7bh(123)是8位的(最高位为0),如果要求扩展到16位,就是007bh(123)

欢迎分享,转载请注明来源:表白网

原文地址:https://h5.hunlipic.com/biaobai/3264960.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2024-02-17
下一篇2024-02-17

发表评论

登录后才能评论

评论列表(0条)

    保存