- 0
- 0
- 约2.14千字
- 约 22页
- 2019-05-06 发布于湖北
- 举报
第章程序开发
; 汇编语言与的混合编程通常有以下几种方式:
在代码中嵌入汇编指令;
在汇编程序和的程序之间进行变量的互访;
汇编程序、程序间的相互调用。;在程序中嵌入汇编程序,可以实现一些高级语言所没有的功能,提高程序执行效率。
编译器的内嵌汇编器支持指令集,编译器的内嵌汇编器支持指令集。
. 内嵌汇编的语法
{ 指令[;指令] /*注释*/
……
[指令]
} ; () 操作数
内嵌的汇编指令中作为操作数的寄存器和常量可以是表达式。
这些表达式可以是、或类型,而且这些表达式都是作为无符号数进行操作。
若需要有符号数,用户需要自己处理与符号有关的操作。
编译器将会计算这些表达式的值,并为其分配寄存器。 ;() 物理寄存器
内嵌汇编中使用物理寄存器有以下限制:
不能直接向寄存器赋值,程序跳转只能使用或指令实现。
使用物理寄存器的指令中,不要使用过于复杂的表达式。因为表达式过于复杂时,将会需要较多的物理寄存器。这些寄存器可能与指令中的物理寄存器在使用时发生冲突。
编译器可能会使用或存放编译的中间结果。在计算表达式的值时可能会将寄存器、和用于子程序调用。因此,在内嵌的汇编指令中,不要将这些寄存器同时指定为指令中的物理存储器。
通常内嵌的汇编指令中不要指定物理寄存器,因为这可能会影响编译器分配寄存器,进而影响代码的效率。;() 常量。在内嵌汇编指令中,常量前
原创力文档

文档评论(0)