Python实现将二进制码转换为格雷码

在一组数的编码中,若任意两个相邻的代码只有一位二进制数不同,则称这种编码为格雷码(Gray Code);

本文将使用Python实现将二进制码转换为格雷码;

实现如下:

def binary2gray(n):
    n = int(n, 2)
    return bin(n^(n>>1))[2:].zfill(4)
    
binary = input('输入二进制码:')
print('格雷码:', binary2gray(binary))

输出:

输入二进制码:1111
格雷码: 1000

原创内容,如需转载,请注明出处;

本文地址: https://www.perfcode.com/p/binary-to-gray.html

分类: 计算机技术
推荐阅读:
Linux系统中删除特定文件外的所有文件 有这么个场景,如果你想删除某个目录下除了指定文件外的所有文件,你会怎么做呢?在Linux系统下,你可以只需要一条命令就可实现这个功能;
Linux挂载一个临时的RAM分区 在Linux下,你可以将RAM当作文件系统使用,这比在Windows方便的多,使用RAM作为文件系统,其读写速度要比磁盘快得多;一条命令即可实现:挂载一个临时的RAM分区,分配指定大小的RAM空间来作为文件系统。
PySide6隐藏和显示窗口(QWidget) PySide6.QtWidgets.QWidget类的成员函数hide()可用于隐藏窗口,show()可用于显示窗口;
Golang中关键字fallthrough在switch语句里的用法 和C语言不同,在Go语言里的 switch 语句中,是不需要使用 break 来退出一个case的。也就是说,case执行完成后,是不会继续向下匹配的。
pyside6将信号与槽函数进行连接 在本文中,你将了解信号与槽的概念,掌握在Qt Designer中添加槽函数,以及在PySide6中的应用。
什么是Cgo 简单的说,就是自C语言出现,已经累积了无数功能强大、性能卓越的C语言代码库,可以说难以替代;在现代编程语言中,如何方便快捷的使用这些C语言库,成了它们一个必须重视的话题。