Вот простой рабочий код, сдвиг влево первый бит байтаКак сместить массив байтов с Golang?
package main
import (
"fmt"
)
type Byte byte
func SL(b Byte) Byte {
if b&0x80 == 0x80 {
b <<= 1
b ^= 0x01
} else {
b <<= 1
}
return b
}
func main() {
var b Byte
b = 0xD3
fmt.Printf("old byte %#08b\n", b) // 11010011
c := SL(b)
fmt.Printf("new byte %#08b", c) // 10100111
}
Что я должен сделать, чтобы перенести массив байтов, как type Byte [2]byte
?
Спасибо за наступление!
Примечание. За исключением особых случаев, в ломках Go гораздо чаще встречаются, чем массивы. Кроме того, в этом случае рассмотрите использование 'uint16'. –