Tiết 57 + 58
BÀI 4: HỆ NHỊ PHÂN VÀ DỮ LIỆU SỐ NGUYÊN (KNTTVCS)
1. Hệ nhị phân và biểu diễn số nguyên
a) Hệ nhị phân
Là hệ đếm cơ số 2, dùng hai ký tự 0 và 1 để biểu
đạt một giá trị số.
Ví dụ: 10011₂ là biểu
diễn của số 19 trong hệ nhị phân.
b) Đổi biểu diễn số nguyên dương từ hệ thập phân sang hệ nhị
phân
Để biểu
diễn số nguyên dương N sang hệ nhị phân ta sẽ biến đổi N về dạng:
N
= dₖ
* 2ᵏ
+ dₖ₋₁ * 2ᵏ⁻¹
+ ... + d₁ * 2¹ + d₀ * 2⁰
Trong
đó: dₖ, dₖ₋₁, ..., d₁, d₀ có giá trị là 0 hoặc 1.
* Cách đổi từ hệ thập phân sang hệ nhị phân:
Bước
1: Chia liên tiếp N cho 2 cho đến khi phần nguyên bằng 0 để tìm số dư.
Bước
2: Viết các số dư theo chiều từ dưới
lên.
Bước
3: Ghi nhận kết quả.
* Cách đổi từ hệ nhị phân sang thập phân:
Giả sử
một số nhị phân có dạng: dₖdₖ₋₁...d₁d₀
Bước
1: Tính tổng dₖ * 2ᵏ + dₖ₋₁ * 2ᵏ⁻¹ + ... + d₁ * 2¹ + d₀ * 2⁰
Bước
2: Ghi nhận kết quả.
d) Biểu diễn số nguyên trong máy tính
Biểu
diễn một số nguyên trong máy tính: Được thực hiện bằng cách chuyển đổi biểu diễn
số đó sang hệ nhị phân rồi đưa vào bộ nhớ. Tuỳ vào số nguyên lớn hay nhỏ mà có
thể phải dùng một hay nhiều byte.
Biểu
diễn số nguyên có dấu (dương, âm): Sử dụng bit cực trái làm bit dấu với quy ước
0 là số dương và 1 là số âm. Thường sử dụng 3 cách mã hoá sau:
+ Mã
thuận (mã dấu – lượng).
+ Mã
bù 1 (mã đảo).
+ Mã
bù 2 (mã đảo).
Ví dụ: Đổi các số 29₁₀ và -29₁₀ sang hệ nhị
phân theo các cách: mã thuận, mã bù 1 và mã bù 2 (giả sử dùng 8 bit).
29₁₀
= 00011101₂
- Mã
thuận: -29₁₀ = 10011101₂ (Bit dấu là 1, phần lượng giữ nguyên)
- Mã
bù 1: -29₁₀ = 11100010₂ (Đảo tất cả các bit của 00011101)
- Mã
bù 2: -29₁₀ = 11100011₂ (Mã bù 1 cộng thêm 1)
2. Các phép toán tính số học trong hệ nhị phân
a) Phép cộng
- Thực
hiện từ phải qua trái.
- Nếu
phép cộng là 10 (tức 1 + 1) thì ghi 0 ở hàng tương ứng dưới tổng và nhớ 1 sang
hàng bên trái.
- Nếu
phép cộng là 11 (tức 1 + 1 + 1, do nhớ 1 từ hàng trước chuyển sang) thì ghi 1 ở
hàng tương ứng dưới tổng và nhớ 1 sang hàng bên trái.
|
BẢNG
CỘNG HAI BIT |
||
|
X |
y |
x + y |
|
0 |
0 |
0 |
|
0 |
1 |
1 |
|
1 |
0 |
1 |
|
1 |
1 |
10 |
b) Phép nhân
-
Nhân thừa số thứ nhất lần lượt với từng chữ số của thừa số thứ hai theo thứ tự
từ phải sang trái và đặt kết quả riêng thẳng hàng với chữ số nhân của thừa số
thứ hai (dịch trái tương ứng).
- Cộng
tất cả các kết quả riêng lại.
|
BẢNG
NHÂN HAI BIT |
||
|
X |
y |
x * y |
|
0 |
0 |
0 |
|
0 |
1 |
0 |
|
1 |
0 |
0 |
|
1 |
1 |
1 |