如题
因为工作要写组语(6502),可是我又不想写组语
所以找了一个开源的c编译器(ca65),想法4这样的:
- 只用全域变量
- 不传参数
- 不用指标
- 不用乘除
- 内嵌组语
反正逻辑都很简单,写程式的时候注意一点,编译器生出来的和我手写的有87%像
只要稍微修改一下交上去,就能爽爽过惹,根本不用写什么组语
可是阿,理想很丰满,现实很骨感QQ
虽然大部份时候都蛮管用der
可是还是有时候会生出一大坨
像是for loop的时候,我期待编译器能不用变量,直接拿一个没在用的暂存器当计数器,可
是他还是用惹变量,生出一大坨
还有阵列,如果足码是一个可以确定的数,那很简单,一个偏移搞定
可是如果足码是一个变量,那就惨了,他会用指标的逻辑去处理QQ
众所周知,6502的资料暂存器是8bit,地址暂存器是16bit
所以指标也是16bit的,怎么想都太大惹,塞不进去8bit的里面
所以只好生出一大坨去处理他
可是我只想要一个偏移啊(′・ω・`)
每次遇到不是内嵌一堆组语解决,不然就是自己手动修改
非常影响我上班看vtb直播的心情
有没有编译器很不听话怎么办的八卦?