作者kikiqqp (喵食罐头)
看板ASM
标题Re: [问题] 同样输出pulse想从不同脚位送出..
时间Tue Sep 10 15:43:48 2013
这里是 asm版,先用 asm的方式说明
一般来说在组语 快的程式通常大而且直观,相反的慢的程式通常小
这是单纯的拿程式空间来换取速度,当你只有 1K时,别说用 JMP了
直接 PC跳跃都会拿来用。
但在 C语言就不同了,编译器会编出什麽鬼玩意很少人会去探讨
传统上会希望写程式的人能够模组化结构化,都用function的写法
不用去管Stack炸掉的问题
但是
进入 function(CALL)和返回 return(RETFIE)实际上是很慢的,还不如用goto(JMP)
很多人很痛恨goto,说会破坏结构,但在单晶片下这被编译後玩意跑的很快
在需要快的情况且必要可读性下,只能狂用 macro或善用前处理器来处理
麻烦的事情,如位元读取或变换
macro就是浪费空间且好读,但就是快,毕竟不是所有编译器都支援 inline的写法
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.135.241.50