Câu trả lời ngắn gọn
Nhị phân là cơ số 2: mỗi chữ số (bit) là 0 hoặc 1 và mỗi vị trí đại diện cho lũy thừa của hai. 1010 ở dạng nhị phân bằng 1×8 + 0×4 + 1×2 + 0×1 = 10 ở dạng thập phân. Máy tính này xử lý số học nhị phân, logic bitwise (AND, OR, XOR, NOT), dịch chuyển bit và chuyển đổi tức thời sang số thập phân, thập lục phân và bát phân.
Bài học chính
- Các giá trị được giới hạn ở phạm vi số nguyên có dấu 32 bit (-2,147,483,648 đến 2,147,483,647) — các chuỗi nhị phân nằm ngoài phạm vi đó sẽ bị từ chối thay vì bị cắt bớt một cách âm thầm.
- Bitwise AND/OR/XOR so sánh các số từng bit một và không giống như phép cộng hoặc phép nhân số học - 1010 AND 0110 bằng 0010, không phải 16.
- Một phép dịch trái cho n tương đương với việc nhân với 2ⁿ; dịch chuyển sang phải cho n tương đương với phép chia số nguyên (tầng) cho 2ⁿ.
- Mỗi chữ số hex ánh xạ tới chính xác 4 bit nhị phân, điều này giúp chuyển đổi từ hex sang nhị phân một cách cơ học khi bạn biết 16 mẫu bốn bit.
Giá trị vị trí nhị phân hoạt động như thế nào
Giống như giá trị vị trí thập phân sử dụng lũy thừa của mười, giá trị vị trí nhị phân sử dụng lũy thừa của hai. Đọc số 8 bit 10110101 từ phải sang trái:
| 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
|---|---|---|---|---|---|---|---|
| 1 | 0 | 1 | 1 | 0 | 1 | 0 | 1 |
Cộng các giá trị vị trí có 1: 128 + 32 + 16 + 4 + 1 = 181. Vậy nhị phân 10110101 bằng số thập phân 181.
Các phép toán theo bit so với các phép toán số học
| Hoạt động | Nó làm gì | Ví dụ |
|---|---|---|
| AND (&) | 1 chỉ khi cả hai bit đều là 1 | 1010 & 0110 = 0010 |
| OR (|) | 1 trong đó một trong hai bit là 1 | 1010 | 0110 = 1110 |
| XOR (^) | 1 nơi các bit khác nhau | 1010 ^ 0110 = 1100 |
| Dịch trái (<<) | Dịch chuyển các bit sang trái, điền 0 (×2ⁿ) | 0011 << 2 = 1100 |
| Dịch chuyển phải (>>) | Dịch chuyển các bit sang phải (2ⁿ, làm tròn xuống) | 1100 >> 2 = 0011 |
Các phép toán theo bit so sánh hoặc dịch chuyển các bit riêng lẻ — chúng không mang giữa các vị trí như cách thực hiện phép cộng, đó là lý do tại sao 1010 VÀ 0110 rơi vào 0010 thay vì bất cứ thứ gì giống như một tổng.
Những lỗi thường gặp cần tránh
- Xử lý AND/OR theo từng bit như thể chúng là phép cộng hoặc phép nhân số học - chúng hoạt động từng chút một mà không mang theo.
- Quên giới hạn phạm vi có dấu 32 bit — một chuỗi nhị phân gồm hơn 31 chuỗi sẽ vượt quá phạm vi được hỗ trợ và trả về lỗi.
- Yêu cầu bitwise KHÔNG chỉ lật các chữ số được in - trong biểu diễn phần bù hai, KHÔNG nhập số dương sẽ tạo ra số âm, không phải đảo ngược chữ số đơn giản.
- Giả sử các vòng dịch chuyển phải — nó cắt ngắn (tầng) về phía âm vô cực đối với các số âm, do đó 7 >> 1 = 3, không phải 3,5 hoặc 4.
Máy tính liên quan
- Máy tính hex — làm việc trực tiếp trong hệ thập lục phân với cùng các chuyển đổi và hoạt động.
- Máy tính số mũ — kiểm tra quyền hạn của hai đằng sau mỗi vị trí bit và sự dịch chuyển.
- Máy tính số lớn — vượt xa phạm vi 32 bit với số học có độ chính xác tùy ý.
- Máy tính khoa học — xử lý toán học tổng quát ngoài chuyển đổi cơ số.