Junior — Middle
Обяснете принципа на показване на байтовете в реда little-endian в паметта на компютъра.
sobes.tech AI
Отговор от AI
В реда little-endian, най-малко значимият байт на числото се съхранява на най-ниския адрес на паметта, а най-значимият — на по-високия. Например, 32-битното число 0x12345678 в паметта ще бъде разположено като последователност от байтове: 0x78, 0x56, 0x34, 0x12.
Това означава, че при четене на байтове от най-ниския адрес, първо получаваме най-малко значимия байт на числото. Този ред е удобен за някои операции и се използва в архитектурите x86.
Пример в Go за демонстриране на записване на число във формат little-endian:
package main
import (
"encoding/binary"
"fmt"
)
func main() {
var num uint32 = 0x12345678
buf := make([]byte, 4)
binary.LittleEndian.PutUint32(buf, num)
fmt.Printf("% x\n", buf) // Ще изведе: 78 56 34 12
}