单片机中P2=(i/10*16)|(i%10);该代码什么意思

如题所述

比如:i=85,则i/10=8,然后i/10*16的意思就是将8向左移4位,即之前是1000,乘以16后变为10000000;同理i%10=5,则二进制位00000101,将两个数按位或后为10000101,也就是0x85。因此该句话的意思就是将一个十进制的数,变为十六进制(非等价),然后在P2口输出。
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-03-26
代码转换,把i转换为BCD码从P2口输出。
BCD码即二-十进制码,此例中用高四位二进制数表示十进制的十位,用低四位二进制数表示十进制的个位。例如i=0x0F;其十进制值为15,则转换成BCD码就是0x15,这样表示有时候会很方便,比如在多位数码管显示当中。
相似回答
大家正在搜