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
}