Junior — Middle
Објасните принцип приказа бајтова у реду little-endian у меморији рачунара.
sobes.tech АИ
Одговор од АИ
U little-endian redosledu, najmanje značajni bajt broja se skladišti na najnižoj adresi memorije, a najznačajniji na najvišoj. Na primer, 32-bitni broj 0x12345678 u memoriji će biti smešten kao niz bajtova: 0x78, 0x56, 0x34, 0x12.
To znači da prilikom čitanja bajtova sa najniže adrese, prvo dobijamo najmanje značajni bajt broja. Ovaj red je pogodan za neke operacije i koristi se u arhitekturama x86.
Primer u Go za demonstraciju zapisivanja broja u little-endian formatu:
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) // Izlaz: 78 56 34 12
}