Nội dung chính
A. Các hệ số.
Hệ đếm được hiểu như tập hợp các ký hiệu và quy tắc sử dụng tập ký hiệu đó để biểu đạt giá trị số bất kỳ. Có các hệ đếm cơ bản sau:
1.Hệ nhị phân (Binary System)
- Hệ nhị phân được nhà toán học cổ người Ấn Độ Pingala phác thảo từ thế kỷ thứ ba trước Công Nguyên. Trong thế kỷ 17, nhà triết học người Đức tên là Gottfried Leibniz đã ghi chép lại một cách trọn vẹn hệ thống nhị phân trong bài viết “Giải thích về toán thuật trong hệ nhị phân” (Explication de l’Arithmétique Binaire). Hệ thống số mà Leibniz dùng chỉ bao gồm số 0 và số 1, tương đồng với hệ số nhị phân đương đại.
- Năm 1854, nhà toán học người Anh, George Boole đã cho xuất bản một bài viết chi tiết về một hệ thống lôgic mà sau này được biết là đại số Boole, đánh dấu một bước ngoặt trong lịch sử toán học. Hệ thống lôgic của ông đã trở thành nền tảng trong việc kiến tạo hệ nhị phân, đặc biệt trong việc thực thi hệ thống này trên bảng điện tử.
- Vào năm 1937, nhà toán học và kỹ sư điện tử người Mỹ, Claude Elwood Shannon, viết một luận án cử nhân tại MIT, trình bày phương thức kiến tạo hệ thống đại số Boole và số học nhị phân dùng các rơ-le và công tắc lần đầu tiên trong lịch sử. Bài viết với đầu đề “Bản phân tích tượng hình của mạch điện dùng rơ-le và công tắc” (A Symbolic Analysis of Relay and Switching Circuits). Bản luận án của ông đã được chứng minh là có tính khả thi trong việc thiết kế mạch điện kỹ thuật số. (tham khảo tại Wikipedia).
- Hệ nhị phân, (hay còn gọi là hệ đếm cơ số 2) là hệ đếm dùng 2 ký tự (0,1) để biểu đạt giá trị số. Chúng thường dùng để biểu đạt giá trị hiệu điện thế tương ứng (có hoặc hiệu điện thế cao mang giá trị 1, không hoặc hiệu điện thế thấp mang giá trị 1).
2.Hệ bát phân (Octal System).
Hệ bát phân (hay còn gọi là hệ đếm cơ số 8) dùng các 8 ký tự (0,1,2,3,4,5,6,7) để biểu đạt giá trị số.
3.Hệ thập phân (Decimal System).
Hệ thập phân (hay còn gọi là hệ đếm cơ số 10) dùng 10 ký tự (0,1,2,3,4,5,6,7,8,9) để biểu đạt giá trị số. Các con số này được dùng với dấu phân cách thập phân – để định vị phần thập phân sau hàng đơn vị. Ngoài ra còn được dùng với dấu “+” hoặc “–” để biểu đạt giá trị “dương” hoặc “âm”
4.Hệ thập lục phân (Hexadecimal System).
Hệ thập lục phân (hay còn gọi là hệ đếm cơ số 16) dùng 16 ký tự (0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F) để biểu đạt giá trị số.
B.Chuyển đổi hệ số
Nhập vào một con số ở hệ thập phân chuyển nó sang các hệ còn lại (nhập từ bàn phím 2,8,16)
Program DoiHeSo; Uses CRT; Var He10,N,Y,HeN:Word; He,Tam:String; Begin Repeat Clrscr; Write('Nhap so nguyen he thap phan: '); Readln(He10); N:=He10; Repeat Write('Ban muon doi so ',n,' sang he nao (2,8,16): '); Readln(HeN); Until (HeN=2) or (HeN=8) or (HeN=16); He:=' '; Repeat Y:=He10 Mod HeN; If Y < 10 Then Str(Y, Tam) Else Tam:=Chr(Y+55); He:=Tam + He; He10:= He10 Div HeN; Until He10 = 0; Writeln; Writeln('So ',N,' he 10 doi sang he: ',HeN:2,' la: ',He); Write('Bam phim c de lam lai, phim khac de ket thuc'); Until UpCase(Readkey)<>'C'; End.
C.Lưu ý:
Hàm Reakey là hàm kiểm tra xem bàn phím nhấn phím gì và nó trả về giá trị là phím được nhấn, ở đây chỉ quan tâm phím C. Vì C và c là khác nhau nên mới dùng thêm UpCase là một hàm đổi thành chữ hoa. Trong qua trình chạy, khi báo xong nếu bấm phím c thì chương trình chạy lại, còn phím khác thì sẽ thoát ra.
Repeat
Write(‘Ban muon doi so ‘,n,’ sang he nao (2,8,16): ‘);
Readln(HeN);
Until (HeN=2) or (HeN=8) or (HeN=16);
Vòng lặp này ngăn người dùng nhập các số khác 2, 8, 16 đề phòng trường hợp người dùng cố ý nhập hệ đếm không đúng, nếu nhập không đúng thì nó sẽ bắt nhập lại.