JavaScript is required

Thực hiện phép toán sau trong hệ nhị phân: 3A h - 196h

A.
1111 1110 1010 0100B
B.
1001 1111 0001 1001B
C.
1000 1110 0101 1011B
D.
1011 0000 0000 1100B
Trả lời:

Đáp án đúng: A


Để giải quyết bài toán này, ta cần chuyển đổi các số hexa (hệ 16) về hệ thập phân, thực hiện phép trừ, sau đó chuyển kết quả về hệ nhị phân. Bước 1: Chuyển đổi 3A h sang hệ thập phân: 3A h = (3 * 16^1) + (10 * 16^0) = 48 + 10 = 58 Bước 2: Chuyển đổi 196 h sang hệ thập phân: 196 h = (1 * 16^2) + (9 * 16^1) + (6 * 16^0) = 256 + 144 + 6 = 406 Bước 3: Thực hiện phép trừ trong hệ thập phân: 58 - 406 = -348 Vì không có đáp án nào cho số âm, bài toán có lẽ yêu cầu tính |3A h - 196 h| = |58 - 406| = 348 Bước 4: Chuyển 348 sang hệ nhị phân: 348 = 256 + 64 + 16 + 8 + 4 = 2^8 + 2^6 + 2^4 + 2^3 + 2^2 Do đó, biểu diễn nhị phân của 348 là 101011100 (9 bits), thêm các số 0 phía trước để thành 12 bits: 0001 0101 1100 Tuy nhiên không có đáp án nào trùng khớp hoàn toàn với kết quả này. Có lẽ có một lỗi trong đề bài hoặc các đáp án. Để kiểm tra lại, ta thử tính 196h - 3Ah: 196 h - 3A h = 406 - 58 = 348 Kết quả vẫn là 348, có biểu diễn nhị phân như trên. Vậy có thể đề bài yêu cầu tìm số bù 2 của -348, hoặc một cách hiểu khác. Nếu đề bài thực sự muốn tính 3A h - 196 h = -348, ta có thể biểu diễn -348 bằng bù 2 16 bit như sau: 348 (hệ 10) = 0000 0001 0101 1100 (hệ 2) Lấy bù 1: 1111 1110 1010 0011 Cộng 1: 1111 1110 1010 0100 Vậy số bù 2 của -348 là 1111 1110 1010 0100B Như vậy đáp án A có vẻ đúng nếu ta hiểu là đang tìm biểu diễn bù 2 của -348.

Câu hỏi liên quan