Junior — Middle
Magyarázza el a byte-ok little-endian sorrendben történő megjelenítésének elvét a számítógép memóriájában.
sobes.tech MI
Válasz az MI-től
Kis-endian sorrendben a szám legkevésbé jelentős byte-ja a legkisebb memória címen tárolódik, míg a legnagyobb a legnagyobb címen. Például, a 0x12345678 32-bites szám a memóriában a következő byte-sorozatként helyezkedik el: 0x78, 0x56, 0x34, 0x12.
Ez azt jelenti, hogy az alacsonyabb címtől olvasva először a szám legkevésbé jelentős byte-ját kapjuk. Ez a sorrend bizonyos műveleteknél kényelmes, és az x86 architektúrákban használatos.
Go nyelven, hogy bemutassuk, hogyan írhatunk egy számot kis-endian formátumban:
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) // Eredmény: 78 56 34 12
}