假设我想使用其原生移位运算符在Python中编写16位线性反馈移位寄存器LFSR。
谢谢, 格特
答案 0 :(得分:1)
Python没有寄存器,您无法声明任何类型。
移位运算符以无限精度整数运算。如果向左移动,数字将继续无限增大(或直到内存不足)。如果你向右移动,最低有效位会像你期望的那样被丢弃。没有“进位标志”,这是你在汇编语言中看到的东西,而Python不是汇编。由于整数具有无限的精度,逻辑和算术移位在某种意义上是相同的(如果你想象符号位无限重复)。
任何时候你想要固定宽度操作,你只需要掩盖无限精度操作的结果。
至于“最聪明”的做事方式,这对Stack Overflow来说并不是一个合适的问题。