JavaScript is required

Một float chiếm 4 byte. Nếu hệ thập lục phân tương đương với 4 byte này là A, B, C và D, thì khi float này được lưu trữ trong bộ nhớ, các byte này được lưu trữ theo thứ tự nào sau đây?

A.

ABCD

B.

DCBA

C.

0xABCD

D.

Phụ thuộc vào kiến ​​trúc big endian hay little endian.

Trả lời:

Đáp án đúng: D


Trong hệ thống máy tính, thứ tự byte khi lưu trữ một số (ví dụ: một số thực dấu chấm động float) trong bộ nhớ phụ thuộc vào kiến trúc của hệ thống. Có hai kiến trúc chính liên quan đến thứ tự byte:

  • Big-endian: Trong kiến trúc big-endian, byte quan trọng nhất (most significant byte - MSB) được lưu trữ ở địa chỉ bộ nhớ thấp nhất, và byte kém quan trọng nhất (least significant byte - LSB) được lưu trữ ở địa chỉ bộ nhớ cao nhất.
  • Little-endian: Trong kiến trúc little-endian, byte kém quan trọng nhất (LSB) được lưu trữ ở địa chỉ bộ nhớ thấp nhất, và byte quan trọng nhất (MSB) được lưu trữ ở địa chỉ bộ nhớ cao nhất.

Trong trường hợp này, một số thực dấu chấm động (float) chiếm 4 byte, và chúng ta gọi các byte này là A, B, C, và D. Câu hỏi đề cập đến việc float này được lưu trữ trong bộ nhớ theo thứ tự nào. Vì thứ tự lưu trữ phụ thuộc vào kiến trúc big-endian hay little-endian, nên đáp án chính xác là:

"Phụ thuộc vào kiến ​​trúc big endian hay little endian."

Nếu hệ thống là big-endian, thứ tự lưu trữ sẽ là ABCD. Nếu hệ thống là little-endian, thứ tự lưu trữ sẽ là DCBA.

Câu hỏi liên quan