社区
汇编语言
帖子详情
44B0X BL main 语句为什么不能跳到c函数
freeman_madcat
2008-02-26 12:54:03
自己做的44b0x板子ADS1.2
要从汇编跳转到c
IMPROT cmain
...
汇编单步执行到BL cmain时不能跳转的cmain (cmain是文件main.c中的函数)
是什么原因?ADS里面需要什么设置吗?
...全文
79
2
打赏
收藏
44B0X BL main 语句为什么不能跳到c函数
自己做的44b0x板子ADS1.2 要从汇编跳转到c IMPROT cmain ... 汇编单步执行到BL cmain时不能跳转的cmain (cmain是文件main.c中的函数) 是什么原因?ADS里面需要什么设置吗?
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
meiZiNick
2008-04-30
打赏
举报
回复
关注 接分
唐勉的技术博客
2008-02-28
打赏
举报
回复
你把所有的cmain都改成main,可能就可以了。如果还是不行,跟踪一下你的代码,看看你的PC指针到底跳到什么地方去了。
相关推荐
arm汇编返C语言,arm架构下C语言反汇编分析(示例代码)
led.elf:file format elf32-littlearmDisassem
bl
y of section .text:00000000:0: e3a0da01 mov sp, #4096 ;0x1000 //设置堆栈为40964: eb000000
bl
c //
跳到
main
函数
执行00000...
反汇编中的
BL
比如反汇编中的文件出现: B/
BL
0x300 00000 只是起方便查看,并不是真的
跳到
这个地址。 具体
跳到
;哪里,由当前的PC值加上偏移地址offset。 比如当前地址为0, B/
BL
0x300 00478,那么具体地址就是 0x000 00478
BL
代表相对跳转,mian
函数
中
BL
0x300 00478本意是想
跳到
SDRAM的300 00478地址,但实际上只能
跳到
ox000 ...
ARM汇编的一般形式和汇编调用C语言
.text //代码段.global _start //表明程序入口_start: //入口
函数
BL
main
//跳转到c语言中的
main
,不一定要转
跳到
main
,也可以执行其他的汇编指令 一般工程中,纯汇编复杂,而且效率比C语言并没有提高多少,所以在没有操作系统的工程中,最好的开发方式就是用汇编调用C语言,使用C语言来完成所需要的工作(只有在对效率要求极高的时候才...
ARM GCC
ARM GCC #ARM GCC 使用arm GCC 编译器, startup_xxx.s 中 通过
bl
_start 进入 _
main
CRTStartup
函数
, 在该
函数
中会对SP进行配置, 完成该
函数
之后,最后
跳到
main
()
函数
执行。
S3C2440 汇编格式
AREA LED,CODE,READONLY ENTRY CODE32 IMPORT
Main
; 声明C程序中的
Main
()
函数
START
BL
Disa
bl
e_Watch_Dog LDR SP,=1024*4
BL
Main
halt_loop
发帖
汇编语言
汇编语言
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
复制链接
扫一扫
2.1w+
社区成员
4.1w+
社区内容
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
加入社区
获取链接或二维码
帖子事件
创建了帖子
2008-02-26 12:54
社区公告
暂无公告