Lập trình hướng đối tượng - Chương 3: Hệ thống số (number systems)
Quy tắc:
Tìm phần bù của số trừ: Tìm phần bù của một số nhị phân bằng việc đảo tất cả các bit của nó
Ví dụ: số 10001101 có phần bù là: 01110010
Cộng số bị trừ với phần bù của số trừ.
Nếu kết quả nhớ 1, thì cộng kết quả với 1
Nếu không thì lấy phần bù của tổng và gắn thêm dấu âm (-).
50 trang |
Chia sẻ: huyhoang44 | Lượt xem: 792 | Lượt tải: 0
Bạn đang xem trước 20 trang tài liệu Lập trình hướng đối tượng - Chương 3: Hệ thống số (number systems), để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
CHƯƠNG 3:HỆ THỐNG SỐ (NUMBER SYSTEMS)3/29/2020NHẬP MÔN TIN HỌC1Các hệ thống sốHệ đếm không theo vị trí của ký số(None –positional number system): Hệ thống số La mã – các số được biểu diễn theo kiểu tích lũy không phụ thuộc vào vị tríVí dụ: I , II , III , IIII, Hệ đếm theo vị trí của ký số (Positional number system): Hệ thống số Ả rập – Giá trị các ký hiệu tuỳ thuộc vào vị trí mà nó chiếm giữVí dụ: 12 , 213/29/2020NHẬP MÔN TIN HỌC2Hệ đếm theo vị trí Giá trị của số tùy thuộc vào:Giá trị của chính chữ số đóVị trí của chữ sốCơ số của hệ thống số (cơ số=số chữ số trong hệ thống số, ví dụ: hệ 10 có 10 chữ số từ 0->9)3/29/2020NHẬP MÔN TIN HỌC3Hệ đếm theo vị trí 3/29/2020NHẬP MÔN TIN HỌC4Hệ đếm theo vị trí Hệ đếm theo vị trí bao gồm:Hệ thập phân (cơ số 10)Hệ nhị phân (cơ số 2)Hệ bát phân (cơ số 8)Hệ thập lục phân (cơ số 16)Đặc điểm:Ít ký hiệuNhững ký hiệu này có giá trị khác nhau ở những vị trí khác nhau3/29/2020NHẬP MÔN TIN HỌC5Hệ thập phân3/29/2020NHẬP MÔN TIN HỌC6Hệ thập phânHệ đếm thập phân bao gồm 10 ký số từ 0 đến 9.Mỗi vị trí của ký số được xác định bằng lũy thừa của cơ số 10Ví dụ: 3/29/2020NHẬP MÔN TIN HỌC7Hệ nhị phân3/29/2020NHẬP MÔN TIN HỌC8Hệ nhị phânHệ nhị phân gồm 2 ký số: 0 và 1Hệ nhị phân dùng để biểu diễn thông tin trong máy tínhMỗi vị trí của ký số được xác định bằng lũy thừa của cơ số 2Ví dụ:3/29/2020NHẬP MÔN TIN HỌC9Hệ bát phânBao gồm 8 ký số:3/29/2020NHẬP MÔN TIN HỌC100 1 2 3 4 5 6 7Hệ bát phânMỗi vị trí của ký số được xác định bằng lũy thừa của cơ số 8Ví dụ:3/29/2020NHẬP MÔN TIN HỌC11Hệ thập lục phân3/29/2020NHẬP MÔN TIN HỌC120 1 2 3 4 5 6 7 8 9A B C D E FHệ thập lục phânHệ thập lục phân dùng 10 ký số từ 0 đến 9 và 6 ký tự A, B, C, D, E, F biểu diễn các giá trị 10 đến 15.Mỗi vị trí của ký số được xác định bởi lũy thừa của cơ số 16Ví dụ:3/29/2020NHẬP MÔN TIN HỌC13Bảng giá trị số của hệ 16 và hệ 23/29/2020NHẬP MÔN TIN HỌC14Hệ 10Hệ 16Hê 2Hệ 10Hệ 16Hê 200000088100011000199100122001010A101033001111B101144010012C110055010113D110166011014E111077011115F1111Cách đổi một số sang hệ thập phânBước 1: Xác định vị trí của ký số từ phải sang trái bắt đầu từ 0Bước 2: Nhân ký số với lũy thừa của cơ số tại vị trí tương ứngBước 3: Tính tổng các tích.3/29/2020NHẬP MÔN TIN HỌC15Cách đổi một số sang hệ thập phânVí dụ: 47068=?103/29/2020NHẬP MÔN TIN HỌC16Đổi một số hệ 10 sang các hệ khácBước 1: Chia số hệ 10 cho cơ số mớiBước 2: Ghi nhận số dư, tiếp tục chia phần nguyên cho cơ số mới, đến khi phần nguyên là 0 thì dừngBước 3: Dãy các số dư từ dưới lên chính là số ở hệ đếm mới.3/29/2020NHẬP MÔN TIN HỌC17Đổi một số hệ 10 sang các hệ khácVí dụ: 95210=?8Kết quả: 95210=167083/29/2020NHẬP MÔN TIN HỌC18Cách đổi nhanh từ hệ 2 sang hệ 8Bước 1: chia số nhị phân thành các nhóm 3 ký số từ phải sang tráiBước 2: chuyển các nhóm 3 ký số từ hệ 2 sang hệ 8Ví dụ: 11010102=1528Bước 1:Bước 2: 3/29/2020NHẬP MÔN TIN HỌC19Cách đổi nhanh từ hệ 8 sang hệ 2Bước 1: chuyển mỗi ký số trong số hệ 8 sang hệ 2Bước 2: kết hợp các kết quả lại chính là số ở hệ 2Ví dụ: 5628=1011100102Bước 1:Bước 2: 3/29/2020NHẬP MÔN TIN HỌC20Cách đổi nhanh từ hệ 2 sang hệ 16Bước 1: Chia số hệ 2 thành các nhóm 4 ký số từ phải sang tráiBước 2: Đổi từng nhóm số hệ 2 thành các số hệ 16Bước 3: kết hợp các kết quả chính là số hệ 163/29/2020NHẬP MÔN TIN HỌC21Cách đổi nhanh từ hệ 2 sang hệ 16Ví dụ: 1111012=?16Bước 1:Bước 2: Kết quả: 1111012=3D163/29/2020NHẬP MÔN TIN HỌC22Cách đổi nhanh từ hệ 16 sang hệ 2Bước 1: Chuyển mỗi ký số của hệ 16 thành 4 ký số hệ 2Bước 2: kết hợp các kết quả lại chính là số ở hệ 23/29/2020NHẬP MÔN TIN HỌC23Cách đổi nhanh từ hệ 16 sang hệ 2Ví dụ: 2AB16=0010101010112Bước 1:Bước 2: 3/29/2020NHẬP MÔN TIN HỌC24Số thập phânSố thập phân có cách định dạng giống như số thập phânTrong hệ thống số với cơ số b được viết:anan-1a0.a-1a-2a-mPhân tích dưới dạng:an x bn + an-1 x bn-1 ++ a0 x b0 + a-1 x b-1 + a-2 x b-2 a-m x b-m3/29/2020NHẬP MÔN TIN HỌC25Dạng nhị phân của số thập phânDạng số thập phân3/29/2020NHẬP MÔN TIN HỌC26Dạng nhị phân của số thập phânVí dụ: 110.1012=1x 22 + 1 x 21 + 0 x 20.1 x 2-1+0 x 2-2+1x2-3= 4+ 2 + 0 + 0.5 + 0 + 0.125 =6.625103/29/2020NHẬP MÔN TIN HỌC27Dạng bát phân của số thập phân3/29/2020NHẬP MÔN TIN HỌC28Dạng số thập phânDạng bát phân của số thập phânVí dụ: 127.548=?103/29/2020NHẬP MÔN TIN HỌC29CÂU HỎI VÀ BÀI TẬPHãy đổi các số thập phân sau đây ra hệ nhị phân: 5, 9, 17, 27, 66252. Hãy đổi các số nhị phận sau đây ra hệ thập phân: 11, 111, 1001, 1101, 10111103. Đổi các số nhị phân sau đây ra hệ 16 11001110101, 1010111000101, 111101110111001104. Đổi các số hệ 16 ra hệ nhị phân 3F8, 35AF, A45Biểu diễn dữ liệuKhi nhập dữ liệu vào máy tính, các tín hiệu từ phím nhấn sẽ được chuyển thành mã nhị phân.Mỗi ký tự được truyền tới máy in, màn hình, đĩa lưu trữ đều ở dạng mã nhị phânKhi thể hiện trên màn hình hoặc khi in dữ liệu, ký tự sẽ được chuyển ngược thành dạng mà người dùng có thể đọc được Lưu trữ dữ liệuDữ liệu được lưu trữ và xử lý trong máy tính dưới dạng nhị phân.Các ký hiệu 0 và 1 được gọi bit2 bit sẽ tạo ra 4 kết hợp là: 00, 01, 10, 11.Một chuỗi 8 bit được gọi là 1 byte.Lưu trữ dữ liệuKhi tính toán, số thập phân sẽ được chuyển đổi thành số nhị phân.Sau khi tính toán xong, kết quả sẽ được chuyển thành số thập phân tương ứng.3/29/2020NHẬP MÔN TIN HỌC33Các phép toán trên số nhị phân3/29/2020NHẬP MÔN TIN HỌC34Phép cộngNguyên tắc cộng nhị phân 0 + 0 = 0 0 + 1 = 1 = 1 + 0 1 + 1 = 0, nhớ 1 sang cột kế tiếp bên trái 1 + 1 + 1 = 1, nhớ 1 sang cột kế tiếpVí dụ: Nhớ 1111 11011 + 111 1000103/29/2020NHẬP MÔN TIN HỌC35Phép trừQuy tắc:0 – 0 = 01 – 0 = 11 – 1 = 0 0 – 1 = 1 mượn từ cột kế tiếp Chú ý: hệ thập phân mượn 10; hệ nhị phân mượn 2; hệ bát phân mượn 8; hệ thập lục phân 16. 3/29/2020NHẬP MÔN TIN HỌC36Phép trừ3/29/2020NHẬP MÔN TIN HỌC37Ví dụ 1:101012 – 011102Giải: 12 0202 10101 - 01110 00111Ví dụ 2:10111002 - 01110002Giải: 2 1011100 -0111000 0100100MượnMượnPhép trừBài tậpSubtract 01101112 from 11011102Subtract 010102 from 100002Subtract 0110112 from 11011123/29/2020NHẬP MÔN TIN HỌC38Phép trừ bùQuy tắc: Tìm phần bù của số trừ: Tìm phần bù của một số nhị phân bằng việc đảo tất cả các bit của nóVí dụ: số 10001101 có phần bù là: 01110010Cộng số bị trừ với phần bù của số trừ.Nếu kết quả nhớ 1, thì cộng kết quả với 1Nếu không thì lấy phần bù của tổng và gắn thêm dấu âm (-).3/29/2020NHẬP MÔN TIN HỌC39Phép trừ bùVí dụ 1: 1010101 – 1001100Bước 1. phần bù của 1001100 là 0110011Bước 2. cộng số bị trừ với phần bù nhớ 1110111 1010101 + 0110011 0001000Do phần nhớ là 1: 0001000 + 1 00010013/29/2020NHẬP MÔN TIN HỌC40Phép trừ bùVí dụ 2: 101100 - 11100101Bước 1: Phần bù của 11100101 là 00011010Bước 2:Nhớ 0111 00101100 +00011010 01000110Bước 3: Do không có phần nhớ, nên lấy phần bù của kết quả thêm vào dấu âm (-)Như vậy kết quả là: -101110013/29/2020NHẬP MÔN TIN HỌC4142Phép trừ bùVí dụ: 1810 - 3510 bằng phương pháp trừ bù. Bước 1: Tìm phần bù của 3510 = 102 – 1 – 35 = 99 – 35 = 6410 Bước 2: 18 + 64 (Phần bù của 35) 82 Bước 3: không có dư 1 nên: Kết quả = -(102- 1– 82) = -17 18-35=-17Phép nhânNguyên tắc phép nhân 0 x 0 = 0 0 x 1 = 0 1 x 0 = 0 1 x 1 = 1Ví dụ. 10101 * 110013/29/2020NHẬP MÔN TIN HỌC43 10101 x 11001 -------- 10101 00000 00000 10101 10101 ----------------- 1000001101Phép chiaBước 1: Bắt đầu từ bên trái của số bị chia.Bước 2: Thực hiện phép trừ số bị chia trừ cho số chia.Nếu thực hiện được phép trừ thì đặt 1 vào thương số và trừ số chia cho số bị chia. Nếu không: đặt 0 vào thương sốDi chuyển đến số kế tiếp bên phải của phần còn lại.Thực hiện bước 2 cho đến khi không còn ký số nào ở số bị chia.3/29/2020NHẬP MÔN TIN HỌC44Phép chiaQuy tắc của phép chia:0/1 = 01/1 = 1Ví dụ: 100001/1103/29/2020NHẬP MÔN TIN HỌC45Phép chia3/29/2020NHẬP MÔN TIN HỌC4647Phép chiaVí dụ: Chia 1000012 cho 1102Số chia 0101 (thương số)110 100001 (số bị chia) 110 1 ( Số chia lớn hơn 100, cho 0 vào thương) 1000 2 (Thêm 1 số 0 ở trên số bị chia xuống nhóm) 110 3 (Thực hiện được phép trừ,cho 1 vào thương) 100 4 (phần dư từ phép trừ và thêm 1 số bị chia) 110 5 (Số chia lớn hơn nên đẩy 0 vào thương) 1001 6 (thêm 1 từ số bị chia ) 110 7 (Thực hiện được phép trừ,cho 1 vào thương) 11 (Số dư)Kết quả có thể viết cách khác như : 3310 (1000012) / 610 (1102), được thương là 510 (1012), số dư là 310 (112).48Phương pháp cộng vào của phép chiaBài tậpDivide 110012 by 1012Divide 01101112 by 01112Bài tậpCộng:1100101+10011011010101+1100101Trừ:110100-110111111-111Nhân:100110x10010111000x1113/29/2020NHẬP MÔN TIN HỌC49Bài tậpChia11001/1011111/113/29/2020NHẬP MÔN TIN HỌC50
Các file đính kèm theo tài liệu này:
- chuong3_hethongsopheptoan_7661.pptx