技术论坛

 回复:求救:格雷码的转换

返回主题列表
作者 主题
plc123
新手

经验值:17
发帖数:17
精华帖:0
楼主    2004-07-20 14:38:55
主题:求救:格雷码的转换
我的CPU是313C,使用SM338读入格雷码后,想转换成二进制数,有大虾有程序吗?请多指教。
广交天下朋友
kinkin
版主

经验值:17829
发帖数:7358
精华帖:53
    2004-07-22 11:19:46
精华帖  主题:回复:求救:格雷码的转换
格雷码的转换方法:
某二进制数为: Bn-1 Bn-2 …… B2 B1 B0
其对应的格雷码为:Gn-1 Gn-2 …… G2 G1 G0
其中最高位保留: Gn-1=Bn-1
其它各位: Gi=Bi+1 XOR Bi i=0,1,2 …… n-2
例如:
二进制:10110
对应的格雷码为:11101

而格雷码转换为二进制时,方法如下:
B0 = Gn-1 XOR Gn-2 XOR …… G1 XOR G0
B1 = Gn-2 XOR Gn-3 XOR …… G1 XOR G0
……
Bn-1=Gn-1

数字飞舞
passwd
游侠

经验值:491
发帖数:413
精华帖:6
    2004-07-23 19:09:43
精华帖  主题:回复:求救:格雷码的转换
今天下午刚好编出来,虽然不是很精简,但是至少能用.可以考虑用指针可以简化很多.

MW0 里存放GRAY码,MW2里存放DEC

L 0
T MW2

X M2.7
X M0.7
= M2.7

X M2.7
X M0.6
= M2.6

X M2.6
X M0.5
= M2.5

X M2.5
X M0.4
= M2.4

X M2.4
X M0.3
= M2.3

X M2.3
X M0.2
= M2.2

X M2.2
X M0.1
= M2.1

X M2.1
X M0.0
= M2.0

X M2.0
X M1.7
= M3.7

X M3.7
X M1.6
= M3.6

X M3.6
X M1.5
= M3.5

X M3.5
X M1.4
= M3.4

X M3.4
X M1.3
= M3.3

X M3.3
X M1.2
= M3.2

X M3.2
X M1.1
= M3.1

X M3.1
X M1.0
= M3.0
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。