JavaScript is required

Thực hiện phép toán sau trong hệ nhị phân: 1ABh – 23Ah

A.
1111 1111 0111 0001B
B.
1001 0101 1011 1101B
C.
1011 1101B
D.
1010 1001B
Trả lời:

Đáp án đúng: D


Để giải quyết bài toán này, chúng ta cần thực hiện phép trừ hai số trong hệ thập lục phân (hệ 16), sau đó chuyển đổi kết quả sang hệ nhị phân. Số thứ nhất là 1ABh, và số thứ hai là 23Ah. Ta thực hiện phép trừ: 1ABh - 23Ah Đầu tiên, ta xem xét giá trị của từng chữ số trong hệ thập lục phân: A = 10 B = 11 Vậy, 1ABh = (1 * 16^2) + (10 * 16^1) + (11 * 16^0) = 256 + 160 + 11 = 427 23Ah = (2 * 16^2) + (3 * 16^1) + (10 * 16^0) = 512 + 48 + 10 = 570 Tuy nhiên, có vẻ như có một sự nhầm lẫn ở đây, vì 23Ah lớn hơn 1ABh. Để thực hiện phép trừ, cần mượn từ hàng cao hơn. Do đó, cần xem xét lại phép trừ trực tiếp trong hệ 16. Thực hiện trừ trực tiếp trong hệ 16: 1AB - 23A ------ Vì A (10) lớn hơn B (11), ta mượn 1 từ hàng kế tiếp (hàng 16). Khi đó, ta có (16 + 11) - 10 = 17. 17 trong hệ thập lục phân là 11 (B). Hàng tiếp theo, ta đã mượn 1 từ A, nên còn A - 1 = 9. 9 nhỏ hơn 3, nên ta tiếp tục mượn 1 từ hàng kế tiếp (hàng 256). Khi đó, ta có (16 + 9) - 3 = 22. 22 trong hệ thập lục phân là 16 (1 * 16^1) + 6 (6 * 16^0), nghĩa là 16. Hàng cuối cùng, ta đã mượn 1, nên còn 1 - 1 - 2, mà 1 đã mượn ở hàng cao hơn nên còn 0. Vậy ta có 0 - 2 = -2. Số này không hợp lệ, cần xem xét lại. Cách giải đúng là: Số thứ nhất là 0x1AB = 427 (hệ 10) Số thứ hai là 0x23A = 570 (hệ 10) Vậy, 427 - 570 = -143. Do đó, không có đáp án nào đúng trong các lựa chọn đã cho vì kết quả là số âm, trong khi các đáp án đều là số nhị phân dương.

Câu hỏi liên quan