关于56N 57N 58N (59N)指令中参数N的计算.
这里的56表示是控制单片机的P0接口的; 57 58 59 分别表示控制单片机的P1 P2 P3接口的.
这里的指令参数N 它是个十进制数.数值范围 00-255 共计256个数.
这个十进制参数正好能代表8位输出口的全部数出状态.
如十进制的00 用二进制数表示 就是 00000000 这正好能表示这8个输出口的输出状态 LED 发光管全亮
如十进制的01 用二进制数表示 就是 00000001 只有末位的LED 发光管不亮
如十进制的03 用二进制数表示 就是 00000011 有末位的2位LED 发光管不亮
......
在实际应用中,我们常会先确定输出状态 ,得到的是二进制数,然后要将它换算出十进制参数.
如 01010010 这样的二进制表示接口状态的数怎样才能转换成十进制的程序参数呢!
有一个简单的方法, 我们可先把二进制数的各位的权标出.
如上面这个二进制数 0 1 0 1 0 0 1 0
它们的各位代表的权 128 64 32 16 8 4 2 1
那么只要把上面那个二进制数是1状态的权加在一起.就是它的十进制参数了.
这个示例就这样加 64+16+2=82
这样在使用56N 57N 58N (59N)指令中只要用82替代那个N,
那么相应的输出口的状态就是 0 1 0 1 0 0 1 0 (有5路输出是低电平.LED灯亮)
[此贴子已经被作者于2008-12-24 9:38:12编辑过]