刚刚在几个平台上看到了程序集扩展,但只是想知道它们是如何不同的。感谢。
答案 0 :(得分:12)
.sNN
版本4. NN
因处理器而异:
.s12 NXP HCS12
.s18 Samsung SAM8
.s26 Renesas 78K
.s34 Renesas M16C/R8C
.s37 Renesas H8
.s43 TI MSP430
.s45 National CR16C
.s48 Renesas M32C
.s51 8051
.s53 Renesas R32C
.s66 Maxim MAXQ
.s68 NXP Coldfire
.s78 NXP S08
.s79 ARM
.s82 Atmel AVR32
.s85 Renesas V850
.s90 Atmel AVR
来源:https://www.iar.com/support/user-guides/#!?tab=userGuides
.asm
是汇编的常见扩展。
.s
和.S
由GNU工具用于汇编语言。区别在于gcc
前端将C预处理器应用于扩展名为.S
的文件,但不应用于扩展名为.s
的文件。
有趣的事实:IAR汇编程序也接受.msa
(在研究上述内容时找到)。
答案 1 :(得分:0)
文件扩展名(如果我理解正确的话)只是一种惯例,某些机制可以识别该文件。
例如.ASMis被一些人用来表示用某种汇编语言编写的源文件。
在Windows上.EXE是可以执行的程序的约定。 .Dll是可以由另一个可执行文件执行的代码的扩展。
因为它本身就是文件扩展名,通常没有内在含义,但它们确实帮助人们提供命名标准,从而帮助其他人了解它们的用途。
答案 2 :(得分:0)
我有时注意到,有时使用的扩展名与编写代码的微处理器类型有关。所以,如果是8051则可能是.s51。我真诚地怀疑这是普遍的。我敢打赌,制作这些工具的人只需随意选择一个扩展名。