ZKX's LAB

汇编9号调用输出寄存器 C语言调用汇编程序时,使用哪些寄存器来传递参数?

2020-09-30知识10

汇编中9号功能调用的小问题 MOV AH,9INT 21H;这两句是调用21H中断的9号动能。其功能好像是显示字符吧。在这里类似于调用一个子程序。某些中断之后al会改变是 21h 中断的9功能在返回时,将刚才显示输出的字符返回在 al 寄存器里了

汇编9号调用输出寄存器 C语言调用汇编程序时,使用哪些寄存器来传递参数?

C语言调用汇编程序时,使用哪些寄存器来传递参数? C语言与汇编语言混合编程应遵守的规则ARM编程中使用的C语言是标准C语言,ARM的开发环境实际上就是嵌入了一个C语言的集成开发环境,只不过这个开发环境与ARM的硬件紧密相关。在使用C语言时,要用到和汇编语言的混合编程。若汇编代码较为简洁,则可使用直接内嵌汇编的方法;否则要将汇编程序以文件的形式加入到项目中,按照ATPCS(ARM/Thumb过程调用标准,ARM/Thumb Procedure Call Standard)的规定与C程序相互调用与访问。在C程序和ARM汇编程序之间相互调用时必须遵守ATPCS规则。ATPCS规定了一些子程序间调用的基本规则,哪寄存器的使用规则,堆栈的使用规则和参数的传递规则等。1)寄存器的使用规则子程序之间通过寄存器r0~r3来传递参数,当参数个数多于4个时,使用堆栈来传递参数。此时r0~r3可记作A1~A4。在子程序中,使用寄存器r4~r11保存局部变量。因此当进行子程序调用时要注意对这些寄存器的保存和恢复。此时r4~r11可记作V1~V8。寄存器r12用于保存堆栈指针SP,当子程序返回时使用该寄存器出栈,记作IP。寄存器r13用作堆栈指针,记作SP。寄存器r14称为链接寄存器,记作LR。该寄存器用于保存子程序的返回地址。寄存器r15称为程序计数器,记作PC。2)堆栈的使用规则。

汇编9号调用输出寄存器 C语言调用汇编程序时,使用哪些寄存器来传递参数?

汇编,怎样用9号功能显示经子程序处理后的字符串? 题:从一个字符串中删去一个字符。 字符串输出,调用dos 9号功能,应将字符串的首地址放在BX寄存器中

汇编9号调用输出寄存器 C语言调用汇编程序时,使用哪些寄存器来传递参数?

#指令寄存器#字符串函数#汇编语言#数据寄存器#字符

随机阅读

qrcode
访问手机版