รหัสแทนข้อมูล
คอมพิวเตอร์ที่ใช้กันในปัจจุบันเป็นอุปกรณ์อิเลคทรอนิกส์ที่ทำงานแบบดิจิทัล เมื่อผู้ใช้ป้อนข้อมูลเข้าสู่เครื่องคอมพิวเตอร์ คอมพิวเตอร์จะทำการแปลงข้อมูลนั้นเป็นเลขฐานสอง (Binary number system) ซึ่งประกอบด้วยเลข 0 และ เลข 1 ซึ่งเรียกว่า รหัสแทนข้อมูล โดยเป็นรหัสที่ใช้แทน ข้อมูลต่าง ๆ ซึ่งอยู่ภายในเครื่องคอมพิวเตอร์ หรือสื่อบันทึกข้อมูลต่าง ๆ เพื่อให้คอมพิวเตอร์และผู้ใช้สามารถเข้าใจข้อมูลต่าง ๆ ได้
รหัสที่ใช้ในการแทนข้อมูลในปัจจุบันมี 2 กลุ่ม คือ
1. รหัสเอ็บซีดิก (EBCDIC): Extended Binary Coded Decimal Interchange Code) เครื่องคอมพิวเตอร์เมนเฟรมของไอบีเอ็มยังคงใช้รหัสนี้
2. รหัสแอสกี (ASCII: American Standard Code Information Interchange) เป็นมาตรฐานที่นิยมใช้กันมาก ในระบบคอมพิวเตอร์ เป็นรหัส 8 บิท แทนสัญลักษณ์ต่าง ๆ ได้ 256 ตัว
2. รหัสแอสกี (ASCII: American Standard Code Information Interchange) เป็นมาตรฐานที่นิยมใช้กันมาก ในระบบคอมพิวเตอร์ เป็นรหัส 8 บิท แทนสัญลักษณ์ต่าง ๆ ได้ 256 ตัว
1. รหัสแทนข้อมูล
เนื่องจากเครื่องคอมพิวเตอร์จะสามารถเข้าใจเฉพาะตัวเลขเพียง 2 ตัวเท่านั้น คือ 0 และ 1 ฉะนั้นการที่จะให้เครื่องคอมพิวเตอร์สามารถเข้าใจข้อมูลอื่น ๆ ได้นั้น จะต้องมีการใช้รหัสในการแทนข้อมูล
รหัสแทนข้อมูล หมายถึง การนำเอารหัสตัวเลข 0 และ 1 มาแทนตัวอักษร หรือตัวเลข หรือสัญลักษณ์ต่าง ๆ โดยเป็นรหัสที่ใช้แทนข้อมูลต่าง ๆ ซึ่งอยู่ภายในเครื่องคอมพิวเตอร์ เพื่อให้คอมพิวเตอร์ และผู้ใช้สามารถเข้าใจข้อมูลต่าง ๆ ได้ ตัวอย่าง เช่น ตัวอักษร A จะมีรหัสแทนข้อมูล คือ 01000001 เป็นต้น ปัจจุบันนิยมใช้รหัสแอสกี ASCII (American Standard Code for Information Interchange Code) แทนข้อมูลภาษาอังกฤษ ซึ่งเป็นรหัสแทนข้อมูลที่ใช้ในระบบสื่อสารข้อมูลทางโทรคมนาคม และในเครื่องคอมพิวเตอร์ ส่วนรหัสแทนอักขระที่เป็นภาษาไทยนั้น ประเทศไทยก็มีใช้รหัสแอสกี เหมือนกัน และจะควบคุม และกำหนดรหัสโดยสำนักงานมาตรฐานอุตสาหกรรม กระทรวงอุตสาหกรรม
2. การวัดขนาดข้อมูลหรือหน่วยวัดความจำ
หน่วยที่ใช้วัดความจำที่เล็กที่สุด คือ ไบต์ (Byte) ซึ่งหมายถึง จำนวนตัวเลขในระบบเลขฐานสองที่ต่อเนื่องกันเป็นกลุ่มแต่ละตัวเรียกว่า บิต (bit) เช่น 01100001 = 8 บิต ก็คือ 1 ไบต์ ประกอบด้วยตัวเลข 0 หรือ เลข 1 จำนวน 8 ตัว เรียงต่อกัน
ทั้งนี้ ขนาด 1 ไบต์ หรือ 8 บิต จะสามารถใช้แทนข้อมูลที่เป็นตัวอักษร ตัวเลข และสัญลักษณ์ต่าง ๆ ได้ 1 ตัว ซึ่งจำนวน 8 บิต จะใช้แทนตัวอักษร ตัวเลข หรือสัญลักษณ์ต่าง ๆ ได้เท่ากับ 256 แบบ หรือ เท่ากับ 2
ดังนั้นเราจะวัดขนาดข้อมูลของคอมพิวเตอร์ตามหน่วยวัดข้อมูลได้ดังนี้
8 BIT (บิต) = 1 Byte (ไบต์) = 1 ตัวอักษร
1,024 B = 1 KB (กิโลไบต์) = 1,024 ตัวอักษร
1,024 KB = 1 MB (เมกะไบต์) = 1,048,576 ตัวอักษร
1,024 MB = 1 GB (กิกะไบต์) = 1,073,741,824 ตัวอักษร
1,024 GB = 1 TB (เทระไบต์) = 1,099,511,627 ตัวอักษร
ดังนั้นเราจะวัดขนาดข้อมูลของคอมพิวเตอร์ตามหน่วยวัดข้อมูลได้ดังนี้
8 BIT (บิต) = 1 Byte (ไบต์) = 1 ตัวอักษร
1,024 B = 1 KB (กิโลไบต์) = 1,024 ตัวอักษร
1,024 KB = 1 MB (เมกะไบต์) = 1,048,576 ตัวอักษร
1,024 MB = 1 GB (กิกะไบต์) = 1,073,741,824 ตัวอักษร
1,024 GB = 1 TB (เทระไบต์) = 1,099,511,627 ตัวอักษร
เนื่องจาก คอมพิวเตอร์ทำงานด้วยกระแสไฟฟ้า ดังนั้นจึงมีการแทนที่สภาวะของกระแสไฟฟ้าได้ 2 สภาวะ คือ สภาวะที่มีกระแสไฟฟ้า และสภาวะที่ไม่มีกระแสไฟฟ้า และเพื่อให้โปรแกรมเมอร์สามารถสั่งการคอมพิวเตอร์ได้ จึงได้มีการสร้างระบบตัวเลขที่นำมาแทนสภาวะของกระแสไฟฟ้า โดยตัวเลข 0 จะแทนสภาวะไม่มีกระแสไฟฟ้า และเลข 1 แทนสภาวะมีกระแสไฟฟ้า
สภาวะ มีกระแสไฟฟ้า แทนด้วยตัวเลข 1
สภาวะไม่มีกระแสไฟฟ้า แทนด้วยตัวเลข 0
ระบบตัวเลขที่มีจำนวน 2 จำนวน (2 ค่า) เรียกว่าระบบเลขฐานสอง (Binary Number System) ซึ่งเป็นระบบตัวเลข ที่สามารถนำมาใช้ในการสั่งงานคอมพิวเตอร์ โดยการแทนที่สภาวะต่างๆ ของกระแสไฟฟ้า แต่ในชีวิตประจำวันของคนเราจะคุ้นเคยกับตัวเลขที่มีจำนวน 10 จำนวน คือ เลข 0 – 9 ซึ่งเรียกว่าระบบเลขฐานสิบ (Decimal Number System) ดังนั้นจึงมีความจำเป็นต้องศึกษาระบบเลขฐาน ประกอบการการศึกษาวิชาด้านคอมพิวเตอร์
ระบบจำนวนที่ใช้ในทางคอมพิวเตอร์ ประกอบด้วย
- ระบบเลขฐานสอง (Binary Number System) ประกอบด้วยตัวเลข 0 และ 1
- ระบบเลขฐานแปด (Octal Number System) ประกอบด้วยตัวเลข 0 – 7
- ระบบเลขฐานสิบ (Decimal Number System) ประกอบด้วยตัวเลข 0 – 9
- ระบบเลขฐานสิบหก (Hexadecimal Number System) ประกอบด้วยตัว เลข 0-9และ A – F
ระบบจำนวน |
จำนวนหลัก (Digit)
| |||||||||||||||
ฐานสอง |
0
|
1
| ||||||||||||||
ฐานแปด |
0
|
1
|
2
|
3
|
4
|
5
|
6
|
7
|
8
| |||||||
ฐานสิบ |
0
|
1
|
2
|
3
|
4
|
5
|
6
|
7
|
8
|
9
| ||||||
ฐานสิบหก |
0
|
1
|
2
|
3
|
4
|
5
|
6
|
7
|
8
|
9
|
A
|
B
|
C
|
D
|
E
|
F
|
ถ้ามีสายสัญญาณ 8 เส้น ก็สามารถสร้างรหัสแทนข้อมูลได้ จำนวน 28 = 256 ค่า เป็นต้น
บิต (Bit) = สภาวะไฟฟ้า 1 เส้น หรือค่า 0 หรือ 1 แต่ละค่าเรียกว่า บิต (Bit) ซึ่งเป็นคำย่อของ “Binary digit”
ไบต์ (Byte) = กลุ่มของบิตที่มีความหมายเฉพาะ ก็คือมีสายสัญญาณ 8 เส้น แสดงว่ามีสัญญาณที่สามารถผสมผสานกันได้ 8 บิต เรียกว่า ไบต์ (Byte)
ตัวอย่างในตารางที่แสดงอักขระ, การเรียงกันของบิต และค่าเลขฐาน 10 ที่แทนอักขระ
Character
|
Bit pattern
|
Byte
number |
Character
|
Bit pattern
|
Byte
number | |
A
|
01000001
|
65
|
ผ
|
10111100
|
188
| |
B
|
01000010
|
66
|
.
|
00101110
|
46
| |
C
|
01000011
|
67
|
:
|
00111010
|
58
| |
a
|
01100001
|
97
|
$
|
00100100
|
36
| |
b
|
01100010
|
98
|
\
|
01011100
|
92
| |
o
|
01101111
|
111
|
~
|
01111110
|
126
| |
p
|
01110000
|
112
|
1
|
00110001
|
49
| |
q
|
01110001
|
113
|
2
|
00110010
|
50
| |
r
|
01110010
|
114
|
9
|
00111001
|
57
| |
x
|
01111000
|
120
|
ฉ
|
10101001
|
169
| |
y
|
01111001
|
121
|
>
|
00111110
|
62
| |
z
|
01111010
|
122
|
�
|
10001001
|
137
|
ดังนั้นถ้าต้องการป้อนคำว่า black จะมีค่าเท่ากับข้อมูลจำนวน 5 ไบต์ ซึ่งมักจะได้ยินว่า 1 ไบต์ เทียบกับ 1 ตัวอักษรนั่นเอง
รหัสแอสกี
รหัสแอสกี (ASCII) เป็นมาตรฐานที่นิยมใช้กันมากในระบบคอมพิวเตอร์ส่วนใหญ่ เป็นคำย่อมาจาก American Standard Code Information Interchange เป็นรหัส 8 บิต แทนสัญลักษณ์ต่าง ๆ ได้ 256 ตัว เมื่อใช้แทนตัวอักษรภาษาอังกฤษแล้ว ยังมีเหลืออยู่ สำนักงานมาตรฐานผลิตภัณฑ์อุตสาหกรรม หรือ สมอ. ได้กำหนดรหัสภาษาไทยเพิ่มลงไปเพื่อให้ใช้งานร่วมกันได้ตามตาราง
ตารางแสดงรหัสเอสกีที่แทนภาษาอังกฤษและภาษาไทย
รหัสเอ็บซีดิก
รหัสเอ็บซีดิก (EBCDIC) เป็นคำย่อมาจาก Extended Binary Coded Decimal Interchange Code พัฒนาและใช้งานโดยบริษัทไอบีเอ็ม เครื่องคอมพิวเตอร์เมนเฟรมของไอบีเอ็มยังคงใช้รหัสนี้
รหัสเอ็บซีดิก (EBCDIC) เป็นคำย่อมาจาก Extended Binary Coded Decimal Interchange Code พัฒนาและใช้งานโดยบริษัทไอบีเอ็ม เครื่องคอมพิวเตอร์เมนเฟรมของไอบีเอ็มยังคงใช้รหัสนี้
การแทนข้อมูลในหน่วยความจำ
หน่วยความจำหลักของคอมพิวเตอร์เป็นที่เก็บข้อมูลและคำสั่งในขณะประมวลผล การเก็บข้อมูลในหน่วยความจำเป็นการเก็บรหัสตัวเลขฐานสอง ข้อมูลที่ใช้ในการประมวลผลทั้งตัวเลขหรือตัวอักษรจะได้รับ การแทนเป็นตัวเลขฐานสองแล้วเก็บไว้ในหน่วยความจำ เช่น ข้อความว่า BANGKOK เก็บในคอมพิวเตอร์ จะแทนเป็นรหัสเรียงกันไป ดังนี้
หน่วยความจำ
| |
B
|
01000010
|
A
|
01000001
|
N
|
01001110
|
G
|
01000111
|
K
|
01001011
|
O
|
01001111
|
K
|
01001011
|
ตัวอย่างการแทนข้อความในหน่วยความจำ
หน่วยความจำของไมโครคอมพิวเตอร์ที่ใช้กันอยู่ในขณะนี้ มีขนาดความกว้าง 8 บิต และเก็บข้อมูลเรียงกันไปโดยมีการกำหนดตำแหน่งซึ่งเรียกว่า เลขที่อยู่ (address)เพื่อให้ข้อมูลที่เก็บมีความถูกต้อง การเขียนหรืออ่านทุกครั้ง จึงต้องตรวจสอบความถูกต้องของข้อมูล วิธีที่ง่าย และนิยมใช้กันคือการเพิ่มอีก 1 บิต เรียกว่า บิตพาริตี (parity bit) บิตพาริตีที่เพิ่มเติมเข้าไปจะทำให้ข้อมูลทั้งหมดในส่วนนั้น มีเลข 1 เป็นจำนวนคู่ หรือจำนวนคี่ เช่น ในไมโครคอมพิวเตอร์ เพิ่มอีก 1 บิต เพื่อทำให้เลขหนึ่งเป็นจำนวนคู่ เรียกว่าพาริตีคู่ (even parity) บิตพาริตีที่เติมสำหรับข้อมูลตัวอักษร A และ E เป็นดังนี้
A 01000001 0 <– บิตพาริตี
E 01000101 1 <– บิตพาริตี
ข้อมูล A มีเลข 1 สองตัว ซึ่งเป็นจำนวนคู่อยู่แล้ว ดังนั้นจึงใส่บิตพาริตีเป็นเลข 0
ข้อมูล E มีเลข 1 เป็นจำนวนคี่ จึงใส่บิตพาริตีเป็น 1 เพื่อให้มีเลข 1 เป็นจำนวนคู่
ข้อมูล E มีเลข 1 เป็นจำนวนคี่ จึงใส่บิตพาริตีเป็น 1 เพื่อให้มีเลข 1 เป็นจำนวนคู่
ข้อความ BANGKOK เมื่อเก็บในหน่วยความจำหลักของไมโครคอมพิวเตอร์ที่มีบิตพาริตีด้วยจะเป็นดังรูป
หน่วยความจำ | บิตพาริตี | |
B
|
01000010
|
0
|
A
|
01000001
|
0
|
N
|
01001110
|
0
|
G
|
01000111
|
0
|
K
|
01001011
|
0
|
O
|
01001111
|
1
|
K
|
01001011
|
0
|
แสดงตัวอย่างหน่วยที่มีบิตพาริ
การแปลงฐานเลข
การแปลงเลขฐานสิบเป็นเลขฐาน 2 และฐาน 2 เป็นฐาน 10
จงเปลี่ยน (101111)2 ให้เป็นเลขฐาน 10วิธีทำ = ( 1 x 25 ) + ( 0 x24 ) + (1 x23 ) + ( 1 x22 ) + ( 1 x 2) + ( 1 x 20)
= 32 + 0 + 8 + 4 + 2 + 1
= 47
คำตอบคือ 47
ตัวอย่าง จงเปลี่ยนเลข 47 ฐาน 10 ให้เป็นเลขฐาน 2
วิธีทำ
2 ) 47
2 ) 23 เศษ 1
2 ) 11 เศษ1
2 ) 5 เศษ 1
2 ) 2 เศษ 1
1 เศษ 0
2 ) 23 เศษ 1
2 ) 11 เศษ1
2 ) 5 เศษ 1
2 ) 2 เศษ 1
1 เศษ 0
คำตอบ คือ (101111)2
ขอขอบคุณแหล่ง
ข้อมูล http://a.1asphost.com/chalin623/drinking48/information2/techno2_1.htm
ไม่มีความคิดเห็น:
แสดงความคิดเห็น