unsigned int s;
m=64;
n=71;
s=m*n; //s=64*71=4544,需要16位二进制数表示,高8位送P1口,低8位送P0口
//由于4544=17*256+192=H3*16*16*16+H2*16*16+H1*16+H0
//两边同除以256,可得17+192/256=H3*16+H2+(H1*16+H0)/256
//因此,高8位16进制数H3*16+H2必然等于17,即4544除以256的商
//低8位16进制数H1*16+H0必然等于192,即4544除以256的余数
P1=s/256; //高8位送P1口 ,P1=17=11H=0001 0001B, P1.0和P1.4口灭,其余亮
P0=s%256; //低8位送P0口 , P3=192=c0H=1100 0000B,P3.1,P3.6,P3.7口灭,其余亮
红色字体这么说明是什么意思 加下划线的是什么意思以及其中的H3 H2 H1
谢谢
17*256表示将“17”左移8位,两字节(16位)的高字节的低4位(H3)左移12位(H3*16*16*16),低字节的高4位(H2)左移8位(H2*16*16)…………
写到这里发觉自己都说不清了,不知道这个有什么意义?!!
欢迎光临 (http://www.51hei.com/bbs/) | Powered by Discuz! X3.1 |