Binary arithmetic
Đã giới thiệu| English | Ý nghĩa |
|---|---|
| register/ˈredʒɪstə/ | bộ lưu trữ tạm thời |
| overflow/ˌəʊvəˈfləʊ/ | tràn bộ nhớ |
| two's complement/tuːz ˈkɒmplɪmənt/ | phủ định hai |
| logical shift/ˈlɒdʒɪkl ʃɪft/ | dịch chuyển logic |
| most significant bit/məʊst sɪɡˈnɪfɪkənt bɪt/ | bit có ý nghĩa cao nhất |
Thực hiện toán học với 1 và 0
- Máy tính cộng, dịch chuyển và lưu trữ số âm — tất cả đều trong nhị phân.
- Một thanh ghi 8 bit có giới hạn, nên kết quả có thể bị vượt quá.
- Bù hai giúp chúng ta lưu trữ số âm.
Cộng nhị phân và vượt quá
- Cộng từng cột từ phải sang trái, mang theo 1: $1+1 = 10$ (viết 0, mang 1).
- Ví dụ:
01110110(118) +00110000(48) =10100110(166). - Thanh ghi 8 bit chứa 0–255. Kết quả lớn hơn 255 cần bit thứ 9 nhưng không vừa — đây là vượt quá, và đáp án được lưu sẽ sai.

Biểu đồ giá trị vị trí 8 bit. Các số 1 nằm dưới các giá trị cộng lại bằng 150 (128 + 16 + 4 + 2).
Binary arithmetic
byte = Σ place values
See how an 8-bit pattern stores a number from 0 to 255.
Add the binary numbers 0101 + 0011. Give the 4-bit result.
Độ khó 1/5 · 100 xu + một phần thưởng nhỏ cho lần hoàn thành đầu tiên trong ngày
5 + 3 = 8 = 1000.
Overflow in an 8-bit register happens when:
Độ khó 1/5 · 100 xu + một phần thưởng nhỏ cho lần hoàn thành đầu tiên trong ngày
An 8-bit register holds 0–255; a bigger result needs a 9th bit that cannot fit, so it is lost.
Dịch chuyển nhị phân logic
- D产业的发展 di chuyển tất cả các bit sang trái hoặc phải; các bit bị lệch ra ngoài sẽ bị mất và số không sẽ điền vào khoảng trống.
- Dịch chuyển trái nhân với 2 mỗi vị trí; dịch chuyển phải chia cho 2 mỗi vị trí.
- Ví dụ:
00110101(53) dịch chuyển trái 2 vị trí →11010100(212) = $53 \times 4$.

Mỗi chữ số thập phân tương ứng trở thành một nhóm 4-bit riêng biệt (nibble): F = 1111, 0 = 0000, 8 = 1000.
A logical left shift by 1 multiplies an unsigned number by what?
Độ khó 2/5 · 140 xu + một phần thưởng nhỏ cho lần hoàn thành đầu tiên trong ngày
Each left-shift place multiplies by 2 (a right shift divides by 2).
00110101 is 53. After a logical left shift of 2 places, what denary value does it hold?
Độ khó 2/5 · 140 xu + một phần thưởng nhỏ cho lần hoàn thành đầu tiên trong ngày
Left shift by 2 = ×4: 53 × 4 = 212 (11010100).
Bù hai (số âm)
- Trong bù hai, bit quan trọng nhất có giá trị âm:
-128 64 32 16 8 4 2 1. - MSB 0 → dương; MSB 1 → âm.
- Để tạo số âm: viết số dương, lật ngược mọi bit, sau đó cộng 1. Vd. $+40$ =
00101000→ lật11010111→ +1 →11011000= $-40$. - Phạm vi bù hai 8 bit: −128 đến +127.

Bit quan trọng nhất có giá trị −128, nên 11011000 = −128 + 64 + 16 + 8 = −40
What is the most negative value an 8-bit two's complement number can store?
Độ khó 2/5 · 140 xu + một phần thưởng nhỏ cho lần hoàn thành đầu tiên trong ngày
The MSB is worth −128, so the range is −128 to +127.
Bạn đã nắm vững
- cộng nhị phân có mang; vượt quá = kết quả cần bit thứ 9 mà thanh ghi 8 bit không chứa nổi (0–255)
- dịch chuyển logic: trái = ×2, phải = ÷2 mỗi vị trí; các bit bị tụt khỏi đầu sẽ mất
- bù hai: MSB có giá trị −128; lật bit và cộng 1 để đảo dấu; phạm vi −128 đến +127