12.10 伪操作与混合编程

目录

伪操作

C和汇编的混合编程

ATPCS协议


伪操作

不生成代码,只是在编译阶段告诉编译器怎么编译

.global

.local

.equ

.macro

.endm

C和汇编的混合编程

CPU主要功能

1.数据 2.跳转 3.load/srore

这三类是通用指令

在C语言中往往有对应的语句

4.cpsr状态寄存器传送指令

5.SWI软中断指令

6.协处理器指令

这三类不是通用指令

C和汇编的混合编程的原则:在那种语言环境下符合哪种语言的语法规则

汇编语言调用C语言

在汇编中将C语言的函数当做标号来处理

C语言调用汇编语言

在C语言中将汇编语言的标号当做函数来处理

C内联汇编

ATPCS协议

协议的主要内容

1.栈的种类

使用满减栈

2.寄存器的使用

R15程序计数器,只能用于存储的指针,不能做其他用途

R14链接寄存器,只能用于存储返回地址,不能用于其他用途

R13栈指针,只能用于存储栈指针,不能作其他用途

R0-R3当函数的参数少于四个的时候使用R0-R3传参,多出4个的部分用栈传递

函数的返回值使用R0寄存器传递

其余寄存器主要用于存储局部变量

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值