关于8051的编译

本文提供了一种策略,通过优化函数库的链接方式和代码编写,来减少代码link的大小。包括将相关函数放入同一个库文件、优化使用MOVX和MOVC指令,以及正确处理volatile变量来生成高效指令。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

如何使代码link以后最小。

1.       Use library with one function or related functions in one file. (一个函数一个library,然后指定library进行链接)

2.       Optimize code.

 

About 8051 MOVX and MOVC

 

MOVC 读指令 对应的是mempsrd 有效。

MOVX 读指令 对应的是 memrd  有效。

MOVX 写指令 对应的是 memwr  有效。

 

当 var = *(volatile char code *)addr  时生成 MOVC 指令

当 var = * ( volatile char xdata *) addr  时生成MOVX 读指令

当 *(volatile char xdata *)addr = data  时生成 MOVX 写指令

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值