Bài giảng Tin học đại cương: Phần I (Chương 2, Phần 1) do TS.Nguyễn Bá Ngọc biên soạn sẽ giới thiệu tới các bạn cách biểu diễn dữ liệu trong máy tính với các nội dung cụ thể như: Các hệ đếm, biểu diễn số trong các hệ đếm, các hệ đếm cơ bản, hệ đếm cơ số b, hệ đếm thập phân (Decimal System, b=10),...
IT1110 Tin học đại cương Phần I: Tin học Chương 2: Biểu diễn liệu máy tính Nguyễn Bá Ngọc Nội dung chương 2.1 Các hệ đếm 2.2 Biểu diễn liệu đơn vị đo 2.3 Biểu diễn số nguyên 2.4 Phép toán số học với số nguyên 2.5 Tính tốn logic với số nhị phân 2.6 Biểu diễn ký tự 2.7 Biểu diễn số thực 2.1 Biểu diễn số hệ đếm Hệ đếm tập hợp ký hiệu quy tắc sử dụng ký hiệu để biểu diễn xác định giá trị số Mỗi hệ đếm có số chữ số/ký số hữu hạn Số lượng chữ số hệ đếm gọi số (base hay radix), ký hiệu b Các hệ đếm Hệ thập phân (Decimal System) → người sử dụng Hệ nhị phân (Binary System) → máy tính sử dụng Hệ mười sáu (Hexadecimal System) → dùng để viết gọn cho số nhị phân Hệ bát phân (Octal System) 2.1.1 Hệ đếm số b Hệ đếm số b (b≥2 nguyên dương) mang tính chất sau: có b chữ số để thể giá trị số Chữ số nhỏ lớn b-1 giá trị (trọng số) vị trí thứ n số hệ đếm số b lũy thừa n: bn Số dương N(b) hệ đếm số b biểu diễn dạng: N(b) = anan-1 a0,a-1a-2 a-m 2.1.1 Hệ đếm số b đó, số N(b) có n+1 chữ số biểu diễn cho phần nguyên m chữ số biểu diễn cho phần sau dấu phẩy, chuyển đổi qua hệ số 10 sau: N (b ) = M (10 ) = n i a b ∑ i i =− m 2.1.2 Hệ đếm thập phân (Decimal System, b=10) Hệ đếm thập phân hay hệ đếm số 10 phát minh người Ả rập cổ, bao gồm 10 chữ số theo ký hiệu sau: 0, 1, 2, 3, 4, 5, 6, 7, 8, Quy tắc tính giá trị hệ đếm đơn vị hàng có giá trị 10 đơn vị hàng kế cận bên phải Ở b=10 2.1.2 Hệ đếm thập phân (Decimal System, b=10) Số nguyên dương hệ thập phân biểu diễn tổng số hạng, số hạng tích số với 10 lũy thừa, số mũ lũy thừa tăng thêm đơn vị kể từ số mũ lũy thừa phía bên phải Số mũ lũy thừa hàng đơn vị hệ thập phân 2.1.2 Hệ đếm thập phân (Decimal System, b=10) Ví dụ: Số 5246 biểu diễn sau: 5246 = 5x10 + 2x10 + 4x10 + 6x10 = x 1000 + x 100 + x 10 + x Thể gọi ký hiệu mở rộng số nguyên 5246 = 5000 + 200 + 40 + 2.1.2 Hệ đếm thập phân (Decimal System, b=10) Như vậy, số 5246: chữ số số nguyên đại diện cho giá trị đơn vị, chữ số đại diện cho giá trị chục (hàng chục), chữ số đại diện cho giá trị trăm (hàng trăm) chữ số đại diện cho giá trị nghìn (hàng nghìn) Số thực: 254.68 = 2x102 + 5x101 + 4x100 + 6x10-1 + 8x10-2 10 2.1.3 Hệ đếm nhị phân (Binary System, b=2) Ví dụ: Số 11101.11(2) tương đương với giá trị thập phân : 12 2.1.4 Hệ đếm bát phân Nếu dùng bit biểu diễn giá trị khác : 000, 001, 010, 011, 100, 101, 110, 111 Các trị tương đương với giá trị hệ thập phân 0, 1, 2, 3, 4, 5, 6, Trong hệ bát phân, giá trị vị trí lũy thừa Ví dụ: -1 -2 235.64(8)=2x8 + 3x8 + 5x8 + 6x8 + 4x8 = 157 8125(10) 13 2.1.5 Hệ đếm thập lục phân (Hexa- decimal System, b=16) Hệ đếm thập lục phân hệ số b=16, sử dụng bit để biểu diễn chữ số Khi thể dạng hexa-decimal, ta có 16 chữ số gồm 10 chữ số từ đến 9, chữ in A, B, C, D, E, F để biểu diễn giá trị số tương ứng 10, 11, 12, 13, 14, 15 Với hệ thập lục phân, giá trị vị trí lũy thừa 16 14 2.1.5 Hệ đếm thập lục phân (Hexa- decimal System, b=16) Ví dụ: 34F5C(16)=3x16 + 4x16 + 15x16 + 5x16 + 12x16 = 216294(10) Ghi chú: Một số ngôn ngữ lập trình quy định viết số hexa phải có chữ H cuối chữ số Ví dụ: Số F viết FH 15 2.1.6 Chuyển đổi số từ hệ thập phân sang hệ số b Đổi phần nguyên từ hệ thập phân sang hệ số b Lấy số nguyên thập phân N(10) chia cho b thương số Kết số chuyển đổi N(b) số dư phép chia viết theo thứ tự ngược lại Đổi phần thập phân từ hệ thập phân sang hệ số b Lấy phần thập phân N(10) nhân với b phần thập phân tích số Kết số chuyển đổi N(b) số phần nguyên phép nhân viết theo thứ tự tính tốn 16 Lưu ý 1: Đổi từ hệ 10 sang hệ Chuyển đổi phần nguyên phần lẻ riêng Chuyển đổi phần nguyên: cách Phân tích thành tổng số lũy thừa Chia cho thương số dư, sau lại lấy thương chia tiếp cho thương = 0, viết số dư theo thứ tự ngược lại 17 Đổi từ hệ 10 sang hệ Ví dụ: 12 = + = 23 + 22 Kết quả: 12(10) = 1100(2) 18 Đổi từ hệ 10 sang hệ Chuyển đổi phần lẻ Lấy phần lẻ nhân lấy phần nguyên, →biểu diễn phần nguyên theo chiều thuận Ví dụ: 19 Đổi từ hệ 10 sang hệ 12.6875(10) = 1100.1011 (2) 20 Đổi từ hệ 10 sang hệ Bài tập: đổi số 35.375(10) sang hệ 21 Lưu ý 2: chuyển đổi nhị phân sang Hexa Duyệt từ phải sang trái, chia thành nhóm bit, sau thay nhóm bit chữ số Hexa Ví dụ: 10 00112 = 2316 22 Chuyển đổi thập phân sang Hexa Thập phân → Hexa: 14988 → ? 14988 : 16 = 936 C 936 : 16 = 58 58 : 16 = A : 16 = Như vậy, ta có: 14988(10) dư 12 tức dư dư 10 tức dư = 3A8C(16) 23 2.1.7 Mệnh đề logic Mệnh đề logic mệnh đề nhận giá trị : Đúng (TRUE) Sai (FALSE), tương đương với TRUE = FALSE = Qui tắc: TRUE = NOT FALSE FALSE = NOT TRUE Phép toán logic áp dụng cho giá trị TRUE FALSE ứng với tổ hợp AND (và) OR (hoặc) sau: 24 Mệnh đề logic 25 Hỏi - đáp 26 ... số 5246: chữ số số nguyên đ? ?i diện cho giá trị đơn vị, chữ số đ? ?i diện cho giá trị chục (hàng chục), chữ số đ? ?i diện cho giá trị trăm (hàng trăm) chữ số đ? ?i diện cho giá trị nghìn (hàng nghìn)... 4x100 + 6x1 0-1 + 8x1 0-2 10 2.1.3 Hệ đếm nhị phân (Binary System, b=2) V? ?i số b =2, có hệ đếm nhị phân Đây hệ đếm đơn giản v? ?i chữ số M? ?i chữ số nhị phân g? ?i BIT (viết tắt từ chữ BInary digiT) Ta...N? ?i dung chương 2.1 Các hệ đếm 2.2 Biểu diễn liệu đơn vị đo 2.3 Biểu diễn số nguyên 2.4 Phép toán số học v? ?i số ngun 2.5 Tính tốn logic v? ?i số nhị phân 2.6 Biểu diễn ký tự 2.7 Biểu