Sobes.tech
Junior — Middle

Paaiškinkite baitų rodymo principą little-endian tvarka kompiuterio atmintyje.

sobes.tech AI

Atsakymas iš AI

Mažėjant mažėjant, skaičiaus mažiausiai reikšmingas baitas saugomas mažiausioje atminties adresu, o didžiausias — didžiausiame. Pavyzdžiui, 0x12345678 32 bitų skaičius atmintyje bus išdėstytas kaip baitų seka: 0x78, 0x56, 0x34, 0x12.

Tai reiškia, kad skaitant baitus nuo mažiausio adreso, pirmiausia gauname skaičiaus mažiausiai reikšmingą baitą. Šis tvarkaraštis yra patogus tam tikroms operacijoms ir naudojamas x86 architektūrose.

Pavyzdys Go kalba, kaip parodyti, kaip įrašyti skaičių mažėjant mažėjant:

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) // Išves: 78 56 34 12
}