Sobes.tech
Junior — Middle

Kompyuter xotirasida baytlarning little-endian tartibida ko'rsatilish prinsipi haqida tushuntiring.

sobes.tech AI

AIdan javob

Little-endian tartibida, raqamning eng kam ma'noli bayti eng pastki xotira manzilida saqlanadi, va eng ma'noli bayt yuqori manzilda. Masalan, 0x12345678 32-bit raqami xotirada quyidagi baytlar ketma-ketligi sifatida joylashadi: 0x78, 0x56, 0x34, 0x12.

Bu shuni anglatadiki, pastki manzildan baytlarni o'qiyotganda, avvalo raqamning eng kam ma'noli baytini olamiz. Bu tartib ba'zi operatsiyalar uchun qulay va x86 arxitekturalarida ishlatiladi.

Go tilida, raqamni little-endian formatida yozishni ko'rsatadigan misol:

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