思考这样的问题:
够用的时候,更小的数据类型,是更好的选择么(更节约资源么)?
举例:uint8_t对比uint32_t
在一般的单片机中,比如STM32(cortex-M),实际上直接使用uint32_t是更好的:
不论是内存和性能,都会更优:
因此这是有实际应用意义的,尤其是在单片机里。至少能节省一些flash空间和汇编指令执行,试想复杂的数学矩阵运算。
当然了,一般不需要纠结那么细致,随便都行。
在PC平台,CPU支持的指令集繁杂,但是一般而言32位的运算不会比8位的效率低。
大部分计算可以理解为如下的过程:
最后:
下图是STM32(cortex-M)的工具链定义。实际上,在macOS等PC平台,速度应该差别不大。