伪指令的概念:
伪指令,一般会被汇编器翻译成一条或者多条等价的实际指令。伪指令存在的意义就类似于C语言中的typedef或者#define等,完全是出于方便程序员编程、阅读源代码的目的,它本身并没有扩展整个指令集的表达能力。
在RISC-V中如la
,li
等都是伪指令。
相关资料:
关于.asm中是否存在机器码
- 包含机器码的汇编文件:一些汇编文件可能会在每条汇编指令前面包含机器码。这通常是因为这些文件是经过汇编器(Assembler)或反汇编器(Disassembler)处理的结果。反汇编器会将机器码转换为汇编代码,同时保留原始的机器码。这种文件格式对于分析二进制程序或进行反汇编操作非常有用,因为它提供了机器码和对应的汇编指令之间的映射。
最前面的例如5ba:
,5be:
代表的是程序计数器PC
的值。
第二列是该指令对应的16进制机器码
- 只包含汇编代码的汇编文件:另一些汇编文件可能只包含人类可读的汇编代码,没有显示机器码。这种文件格式更侧重于程序员的编写和阅读。在这种情况下,你只需要看到汇编代码,而不需要直接查看机器码。