THẬPPHÂN↔NHỊPHÂN(KHÔNGDẤU)THẬPPHÂN Æ NHỊ PHÂNNHỊPHÂN Æ THẬPPHÂN ¾ Phần nguyên: 23 23/2 = 11 Ö 1 Å d0 11/2 = 5 Ö 1 Å d1 5/2 = 2 Ö 1 Å d2 2/2 = 1 Ö 0 Å d3 1/2 = 0 Ö 1 Å d4 ¾ Phần lẻ: .375 .375x2 = 0.75 Ö 0 Å d-1 .75x2 = 1.5 Ö 1 Å d-2 .5x2 = 1.0 Ö 1 Å d-3 1011.011 V k = 1011.011 2 = 1.2 -3 +1.2 -2 + 0.2 -1 +1.2 0 + 1.2 1 + 0.2 2 + 1.2 3 = 23.375 10 NkbV n mi i k i == ∑ − −= 1 . THẬPPHÂN↔NHỊPHÂN (CÓ DẤU) Cách biểu diễn bằng trị tuyệt đối và bit dấu THẬPPHÂN Æ NHỊPHÂNNHỊPHÂN Æ THẬPPHÂN Bit trọng số lớn nhất là bit dấu: d n-1 = 0 -> dấu cộng + d n-1 = 1 -> dấu trứ - Các bước: - Đổi giá trị tuyệt đối sang nhịphân (số dương) - Thêm bit 0 vào phía trước cho đủ bit (nếu chưa đủ bit qui định). - Đổi bit có trọng số lớn nhất thành 1, nếu là số âm ∑ − −= − −= 2 2)1( 1 n mi i i d dN n Cách biểu diễn bằng số bù 1 THẬPPHÂN Æ NHỊPHÂNNHỊPHÂN Æ THẬPPHÂN Số âm –N là bù 1 của số dương N Các bước: - Đổi giá trị tuyệt đối sang nhịphân (số dương) - Thêm bit 0 vào phía trước cho đủ bit (nếu chưa đủ bit qui định). - Lấy bù 1, nếu là số âm - Nếu bit trọng số lớn nhất là 0 (số dương) áp dụng công thức: - Nếu bit trọng số lớn nhất là 1 (số âm): Với i d là bù của d i NkbV n mi i k i == ∑ − −= 1 . ∑ − −= − −= 2 2)1( 1 n mi i i d dN n Cách biểu diễn bằng số bù 2 THẬPPHÂN Æ NHỊ PHÂNNHỊPHÂN Æ THẬPPHÂN Số âm –N là bù 2 của số dương N Các bước: - Đổi giá trị tuyệt đối sang nhịphân (số dương) - Thêm bit 0 vào phía trước cho đủ bit (nếu chưa đủ bit qui định). - Lấy bù 2, nếu là số âm Cách 1: - Nếu bit trọng số lớn nhất là 0 (số dương) áp dụng công thức: - Nếu bit trọng số lớn nhất là 1 (số âm), lấy bù 2 để có số dương, áp dụng công thức trên để tính trị tuyệt đối. Sau đó thêm vào dấu - Cách 2: Áp dụng công thức: NkbV n mi i k i == ∑ − −= 1 . N n ni =− + − − ∑ d i i=0 n-2 1 1 22d Cách biểu diễn bằng số thừa K THẬPPHÂN Æ NHỊ PHÂNNHỊPHÂN Æ THẬPPHÂN Số N K = K + N • Tính trên thậpphân xong đổi thành nhị phân. • Tính trên nhịphân (đối với phép trừ, khi N âm, ta có thể cộng với |N| sau đó lấy bù 2) Chọn số thừa K: nếu số bit mã hóa là n, ta có thể chọn: K = 100000…0 (n-1 bit 0) Hoặc K = 01111… 1 (n-1 bit 1) Ví dụ: Biểu diễn thừa K=128 số thậpphân -43. 43 = 00101011, K=10000000 Cách 1: N K = 128 -43 = 85 Æ N K = 01010101 Cách 2: N K = 10000000 - 00101011 01010101 Cách 3: N K = 10000000 + 00101011 10101011 Lấy bù 2: 01010101 N = N K – K • Có thể trừ nhịphân (Nếu N K có bit trọng số lớn nhất là 0 thì nó tương ứng với 1 số âm, ta phải lấy bù 2 trước khi trừ cho K, kết quả là giá trị tuyệt đối. Nếu không lấy bù 2 trước, thì phép trừ có số nhớ và kết quả là 1 số kiểu bù 2) • Có thể cộng với K sau đó lấy bù 2 ta được giá trị tuyệt đối, nếu bit trọng số lớn nhất là 1 thì đó là số dương, ngược lại là số âm (thêm vào dấu trừ). Ví dụ: Đổi số thừa K= 128 là N K =01010101 thành số thập phân. Cách 1: Lấy bù 2 của N K =01010101 Ta được: 10101011 N= 10101011 - 10000000 00101011 = 43 N= 01010101 - 10000000 11010101 = -43 (Nhớ 1, kết quả là số bù 2) Cách 2: N= 01010101 + 10000000 11010101 Lấy bù 2: 00101011 = 43 (Kết quả là giá trị tuyệt đối, vì N K có bit trọng số lớn nhất là 0, nên tương ứng với số thậpphân âm, ta phải thêm vào dấu “–“ ) THẬPPHÂN↔NHỊPHÂN - DẤU CHẤM ĐỘNG THẬPPHÂN Æ NHỊPHÂN (CHÍNH XÁC ĐƠN HOẶC CHÍNH XÁC KÉP) Bước 1: Đổi giá trị tuyệt đối của số thậpphân sang nhị phân. Bước 2: Chuẩn hóa thành 1.f.2 m Bước 3: Tính E = K + m (chính xác đơn K = 127, chính xác kép K = 1023) Bước 5: Đổi E thành số nhịphân Bước 6: Ghi vào các trường S E f NHỊPHÂN (CHÍNH XÁC ĐƠN HOẶC CHÍNH XÁC KÉP) Æ THẬPPHÂN Bước 1: Đổi E thành số thậpphân Bước 2: Tính m = E – K Bước 3: Viết lại số nhịphân 1.f.2 m dạng bình thường Bước 4: đổi sang số thập phânTHẬPPHÂN ↔ NHỊPHÂN – MÃ BCD Mã BCD Mã BCD Số thậpphân d3 d2 d1 d0 Số thậpphân d3 d2 d1 d0 0 0 0 0 0 5 0 1 0 1 1 0 0 0 1 6 0 1 1 0 2 0 0 1 0 7 0 1 1 1 3 0 0 1 1 8 1 0 0 0 4 0 1 0 0 9 1 0 0 1 THẬPPHÂN Æ NHỊ PHÂNNHỊPHÂN Æ THẬPPHÂN Số dương: Thay mỗi chữ số bằng mã BCD (4 bit) Ví dụ: Số thậpphân 0257 Số dương: Thay mỗi mã BCD bằng chữ số thậpphân Mã BCD là: 0000 0010 0101 0111 Số âm: Số âm mã BCD là bù 10 của số dương Ví dụ: Số thậpphân - 257 Mã BCD của 257 là: 0010 0101 0111 Để có bù 10 ta lấy bù 9 rồi cộng 1. Lấy bù 9: 1001 1001 1001 1001 - 0000 0010 0101 0111 Bù 9: 1001 0111 0100 0010 + 1001 0000 0000 0001 Bù 10: 1001 0111 0100 0011 = - 257 Ví dụ: Mã BCD là: 0000 0010 0101 0111 Số thậpphân 0257 Số âm: Để phân biệt số âm/dương thường trong mã BCD số dương có 4 bit đầu là 0000, số âm có 4 bit đầu là 1001. Nếu đó là số âm, ta phải lấy bù 10 rồi tìm giá trị tuyết đối. Ví dụ: Số có mã BCD 1001 0111 0100 0011 có 4 bit đầu là 1001 nên đây là số âm. Ta lấy bù 10 và thay chữ số thậpphân tương ứng sẽ được giá trị tuyệt đối là 257 CỘNG TRỪ NHỊ PHÂN: 1 1 0 0 0 1 1 +1 +0 +0 - 0 - 1 -0 -1 =0 1 0 0 1 1 0 NHỚ 1 Nhớ 1 Ví dụ: Trừ 1 1 0 0 0 1 - 0 1 1 0 1 1 0 1 0 1 1 0 Nhớ 1 Nhớ 1 Nhớ 1 Nhớ 1 Cộng 1 1 0 0 0 1 + 0 1 1 0 1 1 0 0 1 1 0 0 Tràn bít Nhớ 1 Nhớ 1 Nhớ 1 Nhớ 1 . THẬP PHÂN ↔ NHỊ PHÂN (KHÔNG DẤU) THẬP PHÂN Æ NHỊ PHÂN NHỊ PHÂN Æ THẬP PHÂN ¾ Phần nguyên: 23 23/2 = 11 Ö 1 Å d0 11/2 = 5 Ö. 23.375 10 NkbV n mi i k i == ∑ − −= 1 . THẬP PHÂN ↔ NHỊ PHÂN (CÓ DẤU) Cách biểu diễn bằng trị tuyệt đối và bit dấu THẬP PHÂN Æ NHỊ PHÂN NHỊ PHÂN Æ THẬP PHÂN Bit trọng số lớn nhất là bit dấu:. Cách biểu diễn bằng số thừa K THẬP PHÂN Æ NHỊ PHÂN NHỊ PHÂN Æ THẬP PHÂN Số N K = K + N • Tính trên thập phân xong đổi thành nhị phân. • Tính trên nhị phân (đối với phép trừ, khi N âm,