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
}