4110 bằng bao nhiêu hệ nhị phân

Chuyển đổi giữa số nhị phân, số thập phân, số HEX, chữ số và văn bản.

  • Nhà phát triển và nhà khoa học máy tính để chuyển đổi hệ thống số [nhị phân, thập phân, HEX, Ascii, văn bản] để truyền dữ liệu nhanh chóng.

Hệ nhị phân [hay hệ đếm cơ số 2] là một hệ đếm chỉ dùng hai ký tự là 0 và 1 để biểu đạt một giá trị số. Do có ưu điểm tính toán đơn giản, dễ dàng thực hiện về mặt vật lý, chẳng hạn như trên các mạch điện tử nên hệ nhị phân trở thành một phần kiến tạo căn bản trong các máy tính đương thời.

Hôm nay, Quản Trị Mạng sẽ hướng dẫn các bạn cách để chuyển từ mã nhị phân sang những ký tự chữ cái và chữ số mà chúng ta vẫn sử dụng thường ngày. Chúng ta sẽ sử dụng số 1001001 để làm ví dụ trong bài này nha.

Sử dụng trang web để chuyển đổi số nhị phân sang thập phân

Đây là cách nhanh nhất để giải mã số nhị phân, bạn làm như sau:

  • Vào trang: //www.binarytranslator.com/
  • Chọn binary to decimal
  • Dán số nhị phân cần chuyển đổi vào ô bên trái
  • Nhìn sang ô bên phải, bạn thấy kết quả chưa?

Ngoài ra, với trang web này bạn còn có thể chuyển văn bản thành số nhị phân, dùng số đó đi troll bạn bè cũng khá vui hoặc để thổ lộ tình cảm với "crush" cũng tốt. Có thể chuyển đổi qua lại giữa hệ nhị phân, thập phân, thập lục phân và văn bản nhé, bạn thích thì từ từ khám phá nha. Nếu bạn thích tính năng chuyển đổi qua lại giữa chữ và hệ nhị phân thì mình bonus thêm trang //www.unit-conversion.info/texttools/convert-text-to-binary/ khi giải mã từ số nhị phân sang chữ không bị lỗi font.

Biên dịch "admin quản trị mạng rất đẹp trai" sang nhị phân sẽ thành: 01100001 01100100 01101101 01101001 01101110 00100000 01110001 01110101 11100001 10111010 10100011 01101110 00100000 01110100 01110010 11100001 10111011 10001011 00100000 01101101 11100001 10111010 10100001 01101110 01100111 00100000 01110010 11100001 10111010 10100101 01110100 00100000 11000100 10010001 11100001 10111010 10111001 01110000 00100000 01110100 01110010 01100001 01101001, còn sang số thì thành 1.36333674698E+103.

Nếu muốn não có thêm nếp nhăn thì mời bạn đọc tiếp cách giải mã số nhị phân khác bên dưới đây.

Sử dụng cách thủ công để giải mã số nhị phân

Hệ nhị phân chỉ có 2 số 0 và 1, tương ứng với 2 trạng thái OFF và ON [Sai và Đúng]. Nhị phân đọc từ phải sang trái.

Để giải mã một dãy số nhị phân, ta làm như sau:

Bước 1: Viết số nhị phân thành dãy

Bước 2: Từ phải sang trái, viết số mũ của 2 bên dưới dãy số, lần lượt từ 2^0 cho đến hết

Bước 3: Quy đổi số mũ thành giá trị

Bước 4: Bỏ những giá trị ở số 0, lấy giá trị ở số 1

Bước 5: Cộng các giá trị đã lấy ta sẽ được kết quả chuyển đổi

Ví dụ giải mã dãy số nhị phân 1001001:

Bước 11001001
Bước 22^62^52^42^32^22^12^0
Bước 36432168421
Bước 464xx8xx1

Bảng giải mã số nhị phân sang thập phân

Sau bước 4 ta có các giá trị cần lấy là 64, 8, 1, và tổng của chúng là 64 + 8 + 1 = 73. Vậy số nhị phân 1001001 trong hệ thập phân là 73.

Ở bước 4, bỏ đi giá trị ở số 0 là đã làm tắt vì thực chất số thập phân phải là 1*64+0*32+0*16+1*8+0*4+0*2+1*1=73, nhưng vì 0 nhân với số nào cũng bằng 0, nên mình bỏ cho đỡ rối.

Bạn có hình dung được cách để chuyển ngược lại số 73 sang hệ nhị phân không?

Nếu muốn chuyển chữ cái sang nhị phân và ngược lại, bạn xem bảng quy đổi sau nhé: Symbol là chữ cái, Decimal là hệ thập phân, Binary là Nhị phân.

Cách thứ 2 chỉ để bạn hiểu về thuật toán chuyển đổi thôi, chứ với dãy khoảng 20 số 0 và 1 thì ngồi tính nản lắm. Không bị ép buộc thì dùng cách 1 cho nhanh bạn nhé.

  • 10 việc không nên làm khi sử dụng máy tính
  • Một số thuật ngữ tin học thông dụng
  • Những mẹo vặt công nghệ nhỏ nhưng hữu ích

Chúc các bạn vui vẻ!

Chương III: Biểu diễn dữ liệuChương III: Biểu diễn dữ liệu3.1. Khái niệm thông tinðể mã hóa thông tin trong máy tính, người ta dùng các tínhiệu ñiện thế. Thường tín hiệu trong khoảng 0 0.8V ñại diện chomột giá trị [nhị phân 0] và tín hiệu có mức ñiện thế bất kỳ trongkhoảng 2 5V ñại diện cho giá trị kia [nhị phân 1]. [xem hình 3.1.]5VNhị phân 1Không sửdụng2V0.8 VNhị phân 00VHình 3.1. Biểu diễn trị nhị phân qua ñiện thếTrong hình này, chúng ta quy ước có hai trạng thái có ýnghĩa: trạng thái thấp khi hiệu ñiện thế thấp hơn 0.8V và trạng tháicao khi hiệu ñiện thế lớn hơn 2V. ðể có thông tin, ta phải xác ñịnhthời ñiểm ta quan sát trạng thái của tín hiệu. Thí dụ, tại thời ñiểm t1thì tín hiệu ở trạng thái thấp và tại thời ñiểm t2 thì tín hiệu ở trạngthái cao.//www.ebook.edu.vn63Chương III: Biểu diễn dữ liệu3.2. Lượng thông tin và sự mã hoá thông tinThông tin ñược ño lường bằng ñơn vị thông tin mà ta gọi làbit. Lượng thông tin ñược ñịnh nghĩa bởi công thức:I = Log2[N]Trong ñó:I: là lượng thông tin tính bằng bitN: là số trạng thái có thể cóVậy một bit ứng với một trạng thái trong hai trạng thái cóthể có. Hay nói cách khác, một bit có thể biểu diễn hai trạng thái 0hoặc 1. Ví dụ, ñể biểu diễn một trạng thái trong 8 trạng thái có thểcó, ta cần một số bit ứng với một lượng thông tin là:I = Log2[8] = 3 bitTám trạng thái ñược ghi nhận nhờ 3 số nhị phân [mỗi số nhịphân có thể có giá trị 0 hoặc 1].Như vậy lượng thông tin là số con số nhị phân cần thiết ñểbiểu diễn số trạng thái có thể có. Do vậy, một con số nhị phân ñượcgọi là một bit. Một từ n bit có thể tượng trưng một trạng thái trongtổng số 2n trạng thái mà từ ñó có thể tượng trưng.Ví dụ: Nếu dùng 3 bit [A2,A1,A0] ñể biểu diễn thông tin, ta sẽ cóñược 8 trạng thái khác nhau như trong bảng 3.1.Trạng thái01234567A200001111A100110011A001010101Bảng 3.1. Ba bit biểu diễn ñược 8 trạng thái//www.ebook.edu.vn64Chương III: Biểu diễn dữ liệuNhư vậy trong máy tính thì mọi thứ ñều ñược biểu diễndưới dạng hai con số là 0 và 1. Nhưng ở thế giới thực của chúng tathì thông tin lại là các khái niệm như con số, chữ cái, hình ảnh, âmthanh,….Cho nên ñể ñưa các thông tin vào máy tính thì ta cầnchuyển ñổi thông tin thực thành những con số 0 và 1. Công việcnày ta gọi là sự mã hóa thông tinðể biểu diễn dữ liệu trong máy tính chúng ta cần có các quytắc “gắn kết” các khái niệm trong thế giới thật với một dãy gồm cáccon số 0 và 1.3.3. Hệ Thống SốKhái niệm hệ thống số:Cơ sở của một hệ thống số ñịnh nghĩa phạm vi các giá trị cóthể có của một chữ số. Ví dụ: trong hệ thập phân, một chữ số có giátrị từ 0-9, trong hệ nhị phân, một chữ số [một bit] chỉ có hai giá trịlà 0 hoặc 1.Dạng tổng quát ñể biểu diễn giá trị của một số:n −1Vk =ib.k∑ii =− mTrong ñó:Vk: Số cần biểu diễn giá trịm: số thứ tự của chữ số phần lẻ [phần lẻ của số có mchữ số ñược ñánh số thứ tự từ -1 ñến -m]n-1: số thứ tự của chữ số phần nguyên [phần nguyêncủa số có n chữ số ñược ñánh số thứ tự từ 0 ñến n-1]bi: giá trị của chữ số thứ ik: hệ số [k=10: hệ thập phân; k=2: hệ nhị phân;...].Ví dụ: biểu diễn số 541.2510541.2510 = 5 * 102 + 4 * 101 + 1 * 100 + 2 * 10-1 + 5 * 10-2= [500]10 + [40]10 + [1]10 + [2/10]10 + [5/100]10//www.ebook.edu.vn65Chương III: Biểu diễn dữ liệuCác hệ thống số cơ bản gồm:• Thập phân [Decimal]Dùng 10 chữ số 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 ñể biểu diễn số. Vídụ số 235.3 trong hệ thập phân biểu diễn một ñại lượng:210-12 3 5 . 3trọng số= 2*102 + 3*101 + 5*100 + 3*10-1• Nhị phân [Binary]Dùng hai chữ số 0 và 1 ñể biểu diễn số. Ví dụ số m =1101,011 ở hệ nhị phân biểu diễn một ñại lượng:m2 = 1.23 + 1.22 + 0.21 + 1.20 + 0.2-1 + 1.2-2 + 1.2-3Ở ñây ñể tránh nhầm lẫn chúng ta dùng ký hiệu số nhỏ phíabên dưới ñể biểu diễn con số ñó ở hệ nào, như m2 – số m ởhệ nhị phân, 53010 – số 530 ở hệ thập phân.• Bát phân [Octal]ðể biểu diễn số dùng 8 chữ số 0, 1, 2, 3, 4, 5, 6, 7. Ví dụ:M = [6327,4051]8 = 6.83 + 3.82 + 2.81 + 7.80 + 4.8-1+0.8-2 + 5.8-3 + 1.8-4• Thập lục phân [Hexadecimal]ðể biểu diễn số dùng 16 chữ số: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A,B, C, D, E. Trong ñó tương ñương với hệ 10 thì A=10,B=11, C=12, D=13, E=14, F=15.Bảng 3.2 cho ta các ñặc tính chính của các hệ ñếm cơ bản.Như vậy có nhiều hệ ñếm khác nhau ñược dùng ñể biểudiễn dữ liệu và chúng ta sẽ xem xét cách chuyển ñổi giữa các hệnày với nhau như thế nào sau ñây.//www.ebook.edu.vn66Chương III: Biểu diễn dữ liệuHỆ ðẾMNhị phânCƠ KÍ HIỆU CHỮSỐSỐ2 0, 1TRỌNGVÍ DỤSỐ2i1001,1101Bát phân80,1,2,3,4,5,6,78i3567,24Thập phân100,1,2,3,4,5,6,7,8,910i1369,354Thập lụcphân160, 1, 2, 3, 4, 5, 6,7, 8, 9, A, B, C,D, E, F16i3FA9,6BBảng 3.2. Các hệ ñếm cơ bảna] Chuyển ñổi từ hệ cơ số 10 sang bQuy tắc: Chia số cần ñổi cho b, lấy kết quả chia tiếp cho b cho ñếnkhi kết quả bằng 0. Số ở cơ số b chính là các số dư [của phép chia]viết ngược.Ví dụ 1: Chuyển số 41 ở hệ 10 sang hệ 1641 ÷ 16=2dư92 ÷ 16=0dư2=> 4110 = 2916Ví dụ 2: Chuyển số 41 ở hệ 10 sang hệ 241 ÷ 2 = 20 dư120 ÷ 2 = 10 dư010 ÷ 2 = 5dư05÷2 =2dư12÷2 =1dư01÷2 =0dư1=> 4110 = 1010012 [chú ý!!! viết ngược từ dưới lên]Vì chúng ta cần biểu diễn dữ liệu ở hệ nhị phân, nên việc Chuyểnñổi hệ 10 sang Nhị phân cần ñược ñặc biệt lưu ý riêng như sau:Quy tắc: Người ta chuyển ñổi từng phần nguyên và lẻ theoquy tắc sau://www.ebook.edu.vn67Chương III: Biểu diễn dữ liệuPhần nguyên: Chia liên tiếp phần nguyên cho 2 giữ lại cácsố dư, số nhị phân ñược chuyển ñổi sẽ là dãy số dư liên tiếptính từ lần chia cuối về lần chia ñầu tiên.Phần lẻ: Nhân liên tiếp phần lẻ cho 2, giữ lại các phầnnguyên ñược tạo thành. Phần lẻ của số Nhị phân sẽ là dãyliên tiếp phần nguyên sinh ra sau mỗi phép nhân tính từ lầnnhân ñầu ñến lần nhân cuối.Ví dụ 3: Chuyển sang hệ Nhị phân số: 13,625Thực hiện:Phần nguyên:13:2 = 6 dư6:2 = 3 dư3:2 = 1 dư1:2 = 0 dư1011Phần nguyên của số Nhị phân là 1101Phầnlẻ:0,6875 x 2 = 1,375 Phần nguyên là 10,375 x 2 = 0,750 Phần nguyên là 00,750 x 2 = 1,500 Phần nguyên là 10,5 x 2 = 1,00Phần nguyên là 1Phần lẻ của số Nhị phân là:0,1011Ta viết kết quả là: [13,625]10 = [1101,1011]2Chú ý: việc chuyển ñổi từ hệ thập phân sang hệ Nhị phân khôngphải luôn ñược gọn gàng chính xác, trong trường hợp phép tínhchuyển ñổi kéo dài, thì tùy theo yêu cầu về ñộ chính xác mà ta cóthể dùng phép tính ở mức ñộ cần thiết thích hợp.Ví dụ 4: Chuyển số [3287,5100098]10 sang Cơ số 8.Phần nguyên:3287:8 = 410 dư410:8 = 51 dư51:8 = 6dư//www.ebook.edu.vn72368Chương III: Biểu diễn dữ liệu6:8=0dư6Vậy [3287]10=[6327]8Phần lẻ:0,5100098x8 = 4,08007840,0800784x8= 0,64062720,6406270x8= 5,12501760,1250176x8= 1,0001408Vậy [0,5100098]10=[0,4051]8phần nguyên là 4phần nguyên là 0phần nguyên là 5phần nguyên là 1Kết quả chung là: [3287,5100098]10 =[6327,4051]8b] Chuyển ñổi từ hệ cơ số b sang 10Việc chuyển ñổi từ một hệ cơ số bất kỳ sang hệ 10 thì ñơngiản hơn và cách làm như trong trường ho8p5 ñịnh nghĩa ñại lượngcủa số ñó.Ví dụ 1: số 235.3 trong hệ 8 chuyển sang hệ thập phân có giá trịnhư sau:210-12 3 5 . 3trọng số= 2*82 + 3*81 + 5*80 + 3*8-1 = 157.37510Chuyển ñổi Hệ 2 sang hệ 10Quy tắc: Muốn chuyển ñổi một số biểu diễn trong hệ Nhịphân sang hệ thập phân ta lập Tổng theo trọng số của từng bit Nhịphân, Kết quả của tổng sẽ là biểu diễn Thập phân của số ñó.Ví dụ 2: Chuyển ñổi sang hệ Thập phân số: m = 1101,011Thực hiện: Ta lập tổng theo trọng số của từng Bit nhị phân:m = 1.23 + 1.22 + 0.21 + 1.20 + 0.2-1 + 1.2-2 + 1.2-3m = 8 + 4 + 0 + 1 + 0 + 1/4 + 1/8m = 13,375//www.ebook.edu.vn69Chương III: Biểu diễn dữ liệuc] Chuyển ñổi cơ số 2-8-16Quy tắc: Từ phải sang trái, gom 3 chữ số nhị phân thànhmột chữ số bát phân hoặc gom 4 chữ số nhị phân thành một chữ sốthập lục phân.Bảng 3.3 cho ta các chuyển ñổi tương ứng từ các hệ số vớinhau. ðể làm bài tốt và học tốt các môn học liên quan ñến kỹ thuậtsố, hệ thống số, vi xử lý,... sinh viên cần thuộc lòng bảng này.Hệ bát phân Hệ thập phân Hệ thập lục phânHệ 2[Base 2][Base 8][Base 10][Base 16]00000000001111001022200113330100444010155501106660111777100010881001119910101210A10111311B11001412C11011513D11101614E11111715FBảng 3.3. Tương quan giữa các hệ thống số//www.ebook.edu.vn70Chương III: Biểu diễn dữ liệuVí dụ 1: Chuyển số M = [574,321]8 sang biễu diễn nhị phân.Thực hiện:Thay mỗi chữ số bằng nhóm nhị phân 3 bittương ứng:M = 101111100,011010001574321=>M2 = 101111100,011010001Ví dụ 2: Chuyển số M = [1001110,101001]2 sang cơ số 8.Thực hiện:=>M=M=M=100111[116,51]81106,,101500113.4. Các phép tính số học cho hệ nhị phânCác phép tính Cộng, Trừ, Nhân, Chia cũng ñược sử dụngtrong số học Nhị phân, việc tính toán cụ thể ñược thực hiện theoquy tắc sau:3.4.1. Phép cộng nhị phân:Cộng nhị phân ñược thực hiện theo quy tắc ở bảng 3.4Chú ý:- Khi cộng, thực hiện từ bit có trọng số thấp ñến bit cú trọngsố cao.- Nếu có số nhớ thì số nhớ sinh ra ñược cộng vào bit cú trọngsố cao hơn liền kềSỐ HẠNG 1 SỐ HẠNG 2 TỔNG SỐ NHỚ KẾT QUẢ000000110110101110110Bảng 3.4. Quy tắc Cộng Nhị phân cho 2 số 1 bit.//www.ebook.edu.vn71Chương III: Biểu diễn dữ liệuVí dụ: Thực hiện các phép Cộng Nhị phân:1011+1100101113.4.2. Phép trừ nhị phân:Phép trừ nhị phân ñược thực hiện theo quy tắc trình bày ở Bảng3.5SỐ BỊ TRỪ SỐ TRỪ HIỆU SỐ SỐ VAY0000011110101100Bảng 3.5. Quy tắc trừ Nhị phân cho 2 số 1 bit.Chú ý:-Phép tính ñược thực hiện từ Bit có trọng số thấp ñến Bitcó trọng số cao.Số vay sẽ ñược trừ vào Bit có trọng số cao hơn ở liềnkề.Ví dụ: Thực hiện các tính Trừ Nhị phân sau:1011-01100101Tuy nhiên trong thực tế, máy tính không tính toán kiểu ñómà chuyển ñổi phép trừ thành phép cộng với số bù 2 của nó.Phương pháp này trong máy tính ñược cho là hiệu quả hơn và dễ//www.ebook.edu.vn72Chương III: Biểu diễn dữ liệudàng thiết kế phần cứng cho nó hơn. Số bù có hai loại thường dùnglà số bù 1 và số bù 2.3.4.3. Biểu diễn số nguyên có dấuCó nhiều cách ñể biểu diễn một số nguyên n bit có dấu nhưbiểu diễn bằng trị tuyệt ñối và dấu, biểu diễn bằng số bù 1, biểudiễn bằng số bù 2,…Cách thông thường nhất là biểu diễn bằng trị tuyệt ñối và dấu,trong trường hợp này thì bit cao nhất luôn tượng trưng cho dấu.Khi ñó, bit dấu có giá trị là 0 thì số ñó là nguyên dương, bitdấu có giá trị là 1 thì số ñó là nguyên âm. Tuy nhiên, cách biểu diễndấu này không ñúng trong trường hợp số ñược biểu diễn bằng sốthừa K mà ta sẽ xét ở phần sau trong chương này.Số nguyên có bit dn-1 là bit dấu và có trị tuyệt ñối biểu diễnbởi các bit từ d0 tới dn-2 .Ví dụ:+2510 = 000110012-2510 = 100110012- Một Byte [8 bit] có thể biểu diễn các số có dấu từ -127 tới +127.- Có hai cách biểu diễn số không là 0000 0000 [+0] và 1000 0000[-0].3.4.4. Số bù của một sốSố bù 1 của một số:Số bù 1 của một số nhị phân [hay còn gọi là số invert] là một số nhịphân có ñược bằng cách ñổi các bit 1 thành 0 và bit 0 thành 1.Ví dụ:Số cần ñổiSố bù 1 của nó//www.ebook.edu.vn10110101 110011010001010 001100173Chương III: Biểu diễn dữ liệuSố bù 2 của một số: Số bù hai của một số là số bù 1 của số ñócộng thêm 1.Ví dụ:Số:Số bù một của nó là:Cộng thêm 1Bù hai của nó là:01001110 0011010110110001 11001010+1+110110010 11001011Quy tắc chung tìm bù hai của một số:-Muốn tìm bù 2 của một số ta ñi từ bit có trọng số nhỏnhất ngược lên.Khi nào gặp ñược bit 1 ñầu tiên thì giữ nguyên các số 0bên phải số 1 ñó và cả số 1 ñó nữa, còn tất cả các bítbên trái số 1 ñó thì ñảo lại.Ví dụ:Số:Số bù 2 là:01100100 10010010 1101000 0110011110011100 01101110 0011000 100110013.4.5.Phép trừ nhị phân dùng bù 2Quy tắc:Phép trừ hai số nhị phân ñược thực hiện bằng cách cộng SốBị trừ với Bù 2 của Số trừ.- Nếu số nhớ cuối cùng là 1 thì số ñó là số dương. Kết quảlà những bit không kể ñến bit nhớ cuối cùng ñó.- Nếu số nhớ cuối cùng bằng 0 [không có nhớ] thì số ñó làsố âm và dãy bit mới chỉ là bù 2 của kết quả. Muốn có kếtquả thật ta lấy Bù 2 một lần nữa//www.ebook.edu.vn74Chương III: Biểu diễn dữ liệu-A = bù 2 của AA – B = A + [-B] = A + [bù 2 của B]Ví dụ 1: 13 – 6 = 13 + [-6]6=00000110-6=1111101013=00001101=00000111 [7]Ví dụ 2: Thực hiện phép tính:Ta thực 0111hiện:-01010111 – 0101chuyểnthành0111+1011 [Số bù 2của 0101]10010 Suy ra kếtquả là 0010Số nhớ là 1 => kết quả là số dương, ta bỏ qua số nhớ không ghitrong số kết quả.Ví dụ 3: Thực hiện phép tính: 0101 – 0111Ta thực hiện:0101[5]-0111[-7]Chuyểnthành0101+1001[Số bù 2của 0111]1110Vì số nhớ là 0, kết quả sẽ là một con số âm, bù 2 của kếtquả 1110 là 0010Kết quả thật là: 00103.5. Số quá n [excess-n]Số quá n hay còn gọi là số thừa n của một số N có ñượcbằng cách “cộng thêm” số N với số quá n, số n ñược chọn sao chotổng của n và một số âm bất kỳ luôn luôn dương.//www.ebook.edu.vn75Chương III: Biểu diễn dữ liệuQuy tắc chung:Biểu diễn quá n của N = biểu diễn nguyên dương của [N + n]Ví dụ:Biểu diễn [quá 127] của 7 là:127+7 = 134 = 100001102Cách biểu diễn số nguyên có dấu bằng số bù 2 ñược dùngrộng rãi cho các phép tính số nguyên. Nó có lợi là không cần thuậttoán ñặc biệt nào cho các phép tính cộng và tính trừ, và giúp pháthiện dễ dàng các trường hợp bị tràn.Các cách biểu diễn bằng "dấu , trị tuyệt ñối" hoặc bằng "sốbù 1" dẫn ñến việc dùng các thuật toán phức tạp và bất lợi vì luôncó hai cách biểu diễn của số không.Cách biểu diễn bằng "dấu , trị tuyệt ñối" ñược dùng chophép nhân của số có dấu chấm ñộng.Cách biểu diễn bằng số quá n ñược dùng cho số mũ của cácsố có dấu chấm ñộng. Cách này làm cho việc so sánh các số mũ códấu khác nhau trở thành việc so sánh các số nguyên dương.3.6. Cách biểu diễn số với dấu chấm ñộngðể biểu diễn các con số rất lớn hoặc rất bé, người ta ngườita dùng một cách biểu diễn số gọi là số chấm ñộng [floating pointnumber]. Trước khi ñi vào cách biểu diễn số với dấu chấm ñộng,//www.ebook.edu.vn76Chương III: Biểu diễn dữ liệuchúng ta xét ñến cách biểu diễn một số dưới dạng dấu chấm xácñịnh.Ví dụ:- Trong hệ thập phân, số 25410 có thể biểu diễn dưới cácdạng sau:254 * 100; 25.4 * 101; 2.54 * 102; 0.254 * 103; 0.0254 * 104; …- Trong hệ nhị phân, số [0.00011]2 [tương ñương với số0.0937510] có thể biểu diễn dưới các dạng :0.00011 * 20 ; 0.0011 * 2-1; 0.011 * 2-2; 0.11 * 2-3; 1.1 * 2-4; …Các cách biểu diễn này gây khó khăn trong một số phép sosánh các số. ðể dễ dàng trong các phép tính, các số ñược chuẩn hoávề một dạng biểu diễn:± 1. fff...f x 2± Eñối với hệ nhị phân, trong ñó: f là phần lẻ; E là phần mũ.ðối với các hệ khác thì biểu diễn chấm ñộng ñược gọi là chuẩnhóa khi phần ñịnh trị chỉ có duy nhất một chữ số bên trái dấuchấm thập phân và chữ số ñó khác không → một số chỉ có duynhất một biểu diễn chấm ñộng ñược chuẩn hóa.Ví dụ:2.006 × 103 [chuẩn]20.06 × 102 [không]0.2006 × 104 [không]Các thành phần của số chấm ñộng bao gồm: phần dấu, phầnmũ và phần ñịnh trị. Như vậy, cách này cho phép biểu diễn gầnñúng các số thực, tất cả các số ñều có cùng cách biểu diễn.Có nhiều cách biểu diễn dấu chấm ñộng, trong ñó cách biểudiễn theo chuẩn IEEE 754 ñược dùng rộng rãi trong khoa học máytính hiện nay. Trong cách này một số ñược biểu diễn dưới dạng :F = [-1]S * M * RE//www.ebook.edu.vn77Chương III: Biểu diễn dữ liệu31 3023 22S EM0Hình 3.2. Biểu diễn số có dấu chấm ñộng chính xác ñơn với 32 bitTrong ñó: S: dấu [Sign bit], M: ñịnh trị, R: cơ số, E: mũ[Exponent]– Dấu: 1 bit [0 – dương, 1 – âm]– Mũ: 8 bit [từ bit 23 ñến bit 30] là một số quá 127 [sẽ có trịtừ -127 ñến 128]– Không biểu diễn cơ số [R] vì luôn bằng 2– Phần ñịnh trị M 23 bit [từ bit 0 ñến bit 22] chỉ biểu diễnphần lẻ [bên phải dấu chấm] vì chữ số bên trái dấu chấmluôn là 1.Ví dụ:a] 200610 = [-1]0 * 2.006 * 103b] 209.812510 = 11010001.11012= 1.10100011101 * 27Biểu diễn [quá-127] của 7 là:127+7 = 134 = 100001102Kết quả: 0 10000110 10100011101000000000000 100001101010001110100000000000Các phép tính với số chấm ñộng phức tạp hơn nhiều là vớisố chấm tĩnh, thực hiện lâu hơn và phần cứng cho nó cũng phức tạphơn. Máy tính không có phần cứng tính toán số chấm ñộng, nhưngcó các tập trình con giúp giải các bà toán với số chấm ñộng.3.7. Biểu diễn số BCDCon người thường quen với hệ thập phân, trong khi máytính lại chỉ thích hợp với hệ nhị phân. Do ñó khi nhập xuất dữ liệuthường là nhập xuất theo dạng thập phân. Nếu việc nhập xuất sốthập phân không nhiều thì có thể chuyển số hệ 10 khi nhập sang hệ//www.ebook.edu.vn78Chương III: Biểu diễn dữ liệu2, tính toán xong theo hệ 2 rồi lại chuyển ngược lại sang hệ 10trước khi xuất ra ngoài. Nếu nhập xuất nhiều thì việc chuyển ñổi sẽlàm mất nhiều thời gian xử lý. Mặt khác một vài ứng dụng, ñặc biệtứng dụng quản lý, bắt buộc các phép tính thập phân phải chính xác,không làm tròn số. Với một số bit cố ñịnh, ta không thể ñổi mộtcách chính xác số nhị phân thành số thập phân và ngược lại.Vì vậy, khi cần phải dùng số thập phân, ta có thể dùng mộtcách khác, ñó là cách biểu diễn số thập phân mã bằng nhị phân[BCD: Binary Coded Decimal]. Theo ñó mỗi số thập phân nhậpvào máy sẽ ñược mã hóa theo dạng BCD bằng cách chuyển mỗi kýsố hệ 10 thành 4 bit số nhị phân như trong bảng 3.6. Sau ñó việctính toán sẽ thực hiện trực tiếp trên mã BCD . Tính toán xong thìlại chuyển ra ngoài ttheo dạng thập phân. Khi ñó, nến việc tính toánlà không nhiều, hoặc việc tính toán là ñơn giản thì số BCD sẽ giúpcải thiện ñáng kể tốc ñộ xử lý.Số hệ 10Số BCD00000100012001030011401005010160110701118100091001Bảng 3.6. Số thập phân mã BCDBiểu diễn số dạng BCD sẽ tốn kém hơn nhiều biểu diễndạng nhị phân vì mỗi số BCD cần tới 4 bit. Ví dụ 3257 có dạngBCD là 0011 0010 0101 0111, tức là phải dùng 16 bit, trong khi ởhệ nhị phân chỉ cần 12 bit [110010111001]. Con số càng lớn thì sự//www.ebook.edu.vn79Chương III: Biểu diễn dữ liệuchênh lệnh của nó càng nhiều, trong khi bộ nhớ thì có hạn, cho nênñây là một nhược ñiểm rất lớn của dạng số BCD.ðể thiết kế mạch tính toán thập phân cũng ñòi hỏi ñộ phứctạp nhiều hơn, tuy nhiên nó có thuận lợi là việc tính toán ñều bằngthập phân và cho kết quả chính xác hơn.Một số ứng dụng như xử lý dữ liệu thương mại - kinh tếthường tính toán ít hơn so với khối dữ liệu nhập xuất. Vì vậy màmột số máy và các máy tính tay ñều tính toán trực tiếp trên số thậpphân. Một số máy khác lại có khả năng tính toán trên cả thập phânvà nhị phân.ðiểm khác biệt rõ nhất với các hệ khác khi tính toán là khikết quả cộng nếu các ký số vượt quá kết quả cho phép trongkhoảng từ 0000 ñến 1001 hoặc có nhớ khi cộng thì phải sửa saibằng cách cộng thêm 0110 vào ký số bị sai.Hai ví dụ sau ñây sẽ cho thấy ñiều này.Ví dụ 1:+ 360010 01110011 0110630101 1101270000 0110Ký số vượt quá => kết quả saiSửa sai kết quả0110 0011 Kết quả = 63Trong ví dụ này ta thấy khi cộng hai số 6 với 7 ñã cho ta kếtquả là 13 [1101]. Kết quả này ñã vượt qua con số lớn nhấttrang hệ BCD là 1001 [9], do ñó ñể sửa lỗi ta phải cộngthêm một giá trị 0110 vào ñúng vị trí số cộng sai ñó và nếucó số nhớ thì số nhớ ñó sẽ ñược cộng sang số bên cạnh trái.//www.ebook.edu.vn80Chương III: Biểu diễn dữ liệuVí dụ 2:+ 590010 10000101 1001871000 0001280000 0110Có nhớ 1 => kết quả saiSửa sai kết quả1000 0111 Kết quả = 87Tương tự khi trừ số BCD, nếu có mượn khi trừ thì cũng phải sửasai bằng cách trừ bớt 0110 vào ký số bị sai như trong ví dụ sau:- 380110 00010011 1000230010 1001Ký số bên phải mượn 1 khi tr0000 0110Sửa sai kết quả610010 0011 Kết quả = 23Từ các ví dụ trên ta thấy nhiều khi các phép tính cứ phảisửa sai như vậy thì sẽ dẫn ñến tốc ñộ tính toán cũng bị giảm bớt3.8. Biểu diễn các ký tựNgoài việc biểu diễn số, chúng ta cũng cần ñến biểu diễnchữ và một số ký tự khác. Tuỳ theo các hệ thống khác nhau, có thểsử dụng các bảng mã khác nhau:– ASCII [7 bit] [American Standard Codes for InformationInterchange] ñể biểu diễn 128 ký tự gọi là mã ASCII-7– ASCII mở rộng [8 bit] ñể biểu diễn 256 ký tự00 – 1F: ký tự ñiều khiển20 – 7F: ký tự in ñược//www.ebook.edu.vn81Chương III: Biểu diễn dữ liệu–80 – FF: ký tự mở rộng [ký hiệu tiền tệ, vẽ khung, …]Unicode: Ngày nay do việc sử dụng rộng rãi mạng toàn cầuInternet với rất nhiều ngôn ngữ khác nhau, rất nhiều ký tựkhác nhau nên người ta ñã chuyển sang dùng bộ mãUnicode [16 bit] [UTF-8] có thể biẻu diễn ñược tới 65.536ký tự và như vậy cho phép biểu diễn hầu hết các ngôn ngữtrên thế giới.CÂU HỎI VÀ BÀI TẬP CHƯƠNG III1. Khái niệm thông tin trong máy tính ñược hiểu như thế nào?Lượng thông tin là gì?2. Sự hiểu biết về một trạng thái trong 4096 trạng thái có thểcó ứng với lượng thông tin là bao nhiêu?3. Số nhị phân 8 bit [11001100]2, số này tương ứng với sốnguyên thập phân có dấu là bao nhiêu nếu số ñang ñượcbiểu diễn trong cách biểu diễn:a. Dấu và trị tuyệt ñối.b. Số bù 1.c. Số bù 2.4. ðổi các số sau ñây:a. [011011]2 ra số thập phân.b. [-2005]10 ra số nhị phân 16 bits.c. [55.875]10 ra số nhị phân.5. ðổi các số sau sang hệ thập phân : 123214, 232457, 194116. ðổi các số thập phân saua. 56354 sang nhị phânb. 89353 sang bát phânc. 56253 sang thập lục phân7. ðổi số thập lục E4B3A5 sang nhị phân và bát phân8. ðổi các số sau sang BCDa. 47810//www.ebook.edu.vn82Chương III: Biểu diễn dữ liệub. 37289. Biểu diễn số thực -200610 dưới dạng số có dấu chấm ñộngchính xác ñơn 32 bit.10. Biểu diễn số thực [31.75]10 dưới dạng số có dấu chấm ñộngchính xác ñơn 32 bit.11. Tìm biểu diễn chấm ñộng [1 bit dấu, 8 bit mũ quá-127, 23bit ñịnh trị] của các số sau.a] 1025.29687510b] 0.0664062512. Thực hiện các phép toán sau trong hệ bù 2. Dùng 8 bit [gồmcả bit dấu] cho mỗi số.a] Lấy +47 cộng -19b] Lấy -15 trừ ñi +3613. Thực hiện các phép toán sau trong hệ bù 2. Dùng 8 bit [gồmcả bit dấu] cho mỗi số.a] Cộng +19 vào -24b] Cộng -48 vào -8014. Thực hiện hai phép toán sau trên hệ nhị phân bằng cách lấybù 2 các số âm, các số ñược biểu diễn bằng 6 bit.a] 25-11b] 23-30//www.ebook.edu.vn83

Video liên quan

Chủ Đề