Sobes.tech
Junior — Middle

Компьютердин эсинде байттарды little-endian тартибында көрсөтүүнүн принцибин түшіндіріңіз.

sobes.tech AI

AIден жооп

Little-endian тартибинде, сандын эң аз маанилүү байты эң төмөнкү эс тутум дарегинде сакталат, ал эми эң маанилүү байт — эң жогорку. Мисалы, 0x12345678 32-биттүү сан эс тутумда төмөнкү байттардын тартиби менен жайгашат: 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
}