找回密码
 立即注册
查看: 1489|回复: 8

[开源分享] 一个8051汇编编译器

[复制链接]

16

主题

57

回帖

366

积分

中级会员

积分
366
发表于 2023-11-30 23:13:52 | 显示全部楼层 |阅读模式
本帖最后由 peitianyu 于 2024-7-12 12:55 编辑

具体可以参考: peitianyu/tt8051 (github.com)

最近比较闲, 前段时间在做舵机控制器的时候, 看到本贴下边有大佬说写编译器,
觉着挺有趣就花了点时间自己实现了一个, 算是抛砖引玉, 现只实现了汇编的功能,
可能之后会透过这个写一个类似c语言的一个高级语言编译器

工作总结:
1. 实现了i8051指令集所有指令, 并测试完成
2. 由于写的比较急, 代码比较糙, 有很多小trick, 之后有机会重写
3. 现支持的一些伪代码: sfr sbit db(未使用) org end label, 以及一些特殊符号 "@ # + / . $ ^", 数据类型bit, u8, u16
4. 软件指令仿真, 使用emu仿真工具

运行:
# just run
./rebuild.sh

最新开的一个新坑, 大家可以关注一下, 一个c51的c语言编译器项目([开源分享]8位51单片机开发语言)

回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:429
  • 最近打卡:2025-05-02 07:14:42

1

主题

48

回帖

1329

积分

金牌会员

积分
1329
发表于 2023-12-5 12:22:32 来自手机 | 显示全部楼层
学习了
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:403
  • 最近打卡:2025-04-29 08:28:43

12

主题

319

回帖

2017

积分

金牌会员

积分
2017
发表于 2023-12-5 16:33:44 | 显示全部楼层
学习了
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:423
  • 最近打卡:2025-05-02 07:55:56
已绑定手机

19

主题

3191

回帖

4872

积分

论坛元老

积分
4872
发表于 2024-3-10 14:14:19 来自手机 | 显示全部楼层
现在用汇编的不多了吧
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:338
  • 最近打卡:2025-04-25 16:31:21
已绑定手机

14

主题

600

回帖

2199

积分

荣誉版主

积分
2199
发表于 2024-3-10 22:13:20 | 显示全部楼层
大牛太多了.
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:116
  • 最近打卡:2025-05-02 21:51:53

0

主题

71

回帖

151

积分

注册会员

积分
151
发表于 2024-3-11 11:28:03 | 显示全部楼层
牛{:5_332:}
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:423
  • 最近打卡:2025-05-02 07:55:56
已绑定手机

19

主题

3191

回帖

4872

积分

论坛元老

积分
4872
发表于 2024-3-12 00:31:50 | 显示全部楼层
现在flash比较大已经很少使用汇编除非底层和bootloader
回复 支持 1 反对 0

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:148
  • 最近打卡:2025-04-30 11:21:00

4

主题

129

回帖

241

积分

中级会员

积分
241
发表于 2024-7-9 14:44:11 | 显示全部楼层
很好的讲解!
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:337
  • 最近打卡:2025-04-28 12:55:00

23

主题

296

回帖

1160

积分

金牌会员

积分
1160
发表于 2024-7-9 16:25:01 | 显示全部楼层
还有高手
回复

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-5-2 22:15 , Processed in 0.137511 second(s), 109 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表