从 大陆引进 8位机开始, 大致是 英特尔 和 摩托罗拉 的 PK, 从 8080(Z80) PK 6800(6502) , 还是 8051 PK 6803(68HC05,68HC08.....), 俺对其指令集的偏爱,都是倒向 摩托罗拉 系的,摩托罗拉系有着丰富的间接寻址方式,特别是堆栈间接寻址,如想动态使用一些临时变量,程序会编写的特别简洁高效。 
后来引进的 PIC 和 AVR, 俺始终喜欢 AVR, 指令丰富编程高效,略为使用一些宏定义,能让汇编写出 准C 的样式来,运行速度和效率,或许是至今世界上最高效的 8位机。
再后来,引进了 意法半导体的STM8, 其丰富的向上兼容 6502的指令集,让俺折服 ,为此,曾写过一篇**,〈STM8 ! 8位单片机的终结者吗?! 〉
不过,STM8下的浮点库俺没研究,
原因1: 指令集 兼容于6800(6502)系,只是更丰富,将原 6800(6502)系 的浮点库,略为简化优化一下指令集,即可使用。
官方提供的 C编译器,肯定也有浮点库,你可参看一下其反汇编代码。
原因2: STM8的指令集实在太丰富了,比 AVR的还要强大,俺玩汇编,就是想从里面,找出点特殊的用法算法,思考指令集还有啥地方能改进提高。
STM8拥有一个非常完美的指令集,已经到了你想啥就能给你啥(汇编中的 共 产 主 义 镜界),完美的让俺除了折服 佩服,已无任何地方能让俺提改进意见了,因此,也失去了研究STM8指令集的动力。
|