รหัสแอสกี้ (ASCII) ย่อมาจาก American Standard Code for Information Interchange เป็นรหัสที่กำหนดขึ้นโดยหน่วยงานกำหนดมาตรฐานของสหรัฐอเมริการหัสอักขระแต่ละตัวประกอบด้วย ๘ บิต
บิตที่ ๔ ถึง ๗ เป็นส่วนที่ใช้กำหนดประเภทของตัวอักขระ
| ||
๐๐๑๐
|
เครื่องหมายต่าง ๆ
| |
๐๐๑๑
|
ตัวเลขและเครื่องหมายต่างๆ
| |
๐๑๐๐
|
A-O
| |
๐๑๐๑
|
P-Z และเครื่องหมายต่าง ๆ
| |
๐๑๑๐
|
a-o
| |
๐๑๑๐
|
p-z และเครื่องหมายต่าง ๆ
| |
บิตที่ ๐ ถึง ๓ เป็นรหัสแทนอักขระแต่ละตัวในกลุ่มนั้น
| ||
คอมพิวเตอร์ทำงานด้วยหลักการทางอิเล็กทรอนิกส์ ที่แทนสัญญาณทางไฟฟ้าด้วยตัวเลขศูนย์และหนึ่งซึ่งเป็นตัวเลขในระบบเลขฐานสอง แต่ละหลักเรียกว่าบิต (Binary Digit: Bit) และเมื่อนำตัวเลขหลาย ๆ บิตมาเรียงกัน จะใช้สร้างรหัสแทนความหมายจำนวน หรือตัวอักษร หรือสัญลักษณ์ ทั้งภาษาอังกฤษและภาษาไทยได้ และเพื่อให้การแลกเปลี่ยนข้อความระหว่างมนุษย์กับคอมพิวเตอร์เป็นไปในแนวเดียวกัน จึงมีการกำหนดมาตรฐานรหัสตัวเลขในระบบเลขฐานสองสำหรับแทนสัญลักษณ์เหล่านี้ รหัสมาตรฐานที่นิยมใช้กันมากมีสองกลุ่มคือ
รหัสแอสกี้ (ASCII) เป็นมาตรฐานที่นิยมใช้กันมากในระบบคอมพิวเตอร์ส่วนใหญ่ เป็นคำย่อมาจากAmerican Standard Code Information Interchange เป็นรหัส ๘ บิต แทนสัญลักษณ์ต่าง ๆ ได้ ๒๕๖ ตัว เมื่อใช้แทนตัวอักษรภาษาอังกฤษแล้วยังมีเหลืออยู่ สำนักงานมาตรฐานผลิตภัณฑ์อุตสาหกรรม หรือ สมอ. ได้กำหนดรหัสภาษาไทยเพิ่มลงไปเพื่อให้ใช้งานร่วมกันได้ ตามตารางที่ ๔.๑ การแทนค่าแทนค่าด้วยตัวเลขแนวตั้ง(b๗ – b๔)ก่อน แล้วตามด้วยตัวเลขแนวนอน(b๓ – b๐) เช่น ก ๑๐๑๐๐๐๐๑ และ A ๐๑๐๐๐๐๐๑
ตารางที่ ๔.๑ รหัส ASCII แทนตัวอักษรภาษาอังกฤษและภาษาไทย
หน่วยความจำของไมโครคอมพิวเตอร์ที่ใช้กันอยู่ในขณะนี้ มีขนาดความกว้าง ๘ บิต และเก็บข้อมูลเรียงกันไป โดยมีการกำหนดตำแหน่งซึ่งเรียกว่า เลขที่อยู่ (Address) เพื่อให้ข้อมูลที่เก็บมีความถูกต้อง การเขียนหรืออ่านทุกครั้งจึงต้องตรวจสอบความถูกต้องของข้อมูล วิธีที่ง่ายและนิยมใช้กันคือการเพิ่มอีก ๑ บิต เรียกว่า บิตพาริตี้ (Parity bit) บิตพาริตี้ที่เพิ่มเติมเข้าไปจะทำให้ข้อมูลทั้งหมดในส่วนนั้นมีเลข ๑ เป็นจำนวนคู่ หรือจำนวนคี่ก็ได้ เช่น ในไมโครคอมพิวเตอร์เพิ่มอีก ๑ บิต เพื่อทำให้บิตที่แสดงค่าของรหัสเป็นจำนวนคู่ เรียกว่าพาริตี้คู่ (Even parity) ส่วนการเพิ่มบิตพาริตี้รวมอยู่ในกลุ่มของรหัสแล้วทำให้บิตที่แสดงค่าของรหัสเป็นจำนวนคี่ เรียกว่าพาริตี้คี่ (Odd parity) บิตพาริตี้ที่เติมสำหรับข้อมูลตัวอักษร Aและ E เป็นดังนี้
A ๐๑๐๐๐๐๐๑ ๐ <-- บิตพาริตี้ E ๐๑๐๐๐๑๐๑ ๑<-- บิตพาริตี้
ข้อมูล A มีเลข ๑ สองตัว ซึ่งเป็นจำนวนคู่อยู่แล้ว ดังนั้นจึงใส่บิตพาริตี้เป็นเลข ๐ ข้อมูล E มีเลข ๑ เป็นจำนวนคี่ จึงใส่บิตพาริตี้เป็น ๑ เพื่อให้มีเลข ๑ เป็นจำนวนคู่ข้อความ BANGKOK เมื่อเก็บในหน่วยความจำหลักของไมโครคอมพิวเตอร์ที่มีบิตพาริตี้ด้วยจะเป็น ดังตารางที่ ๔.๒
ตารางที่ ๔.๒ ตัวอย่างการแทนข้อความในหน่วยความจำแบบมีบิตพาริตี้
หน่วยความจำ
|
บิตพาริตี้
| ||
B
|
๐๑๐๐๐๐๑๐
|
๐
| |
A
|
๐๑๐๐๐๐๐๑
|
๐
| |
N
|
๐๑๐๐๑๑๑๐
|
๐
| |
G
|
๐๑๐๐๐๑๑๑
|
๐
| |
K
|
๐๑๐๐๑๐๑๑
|
๐
| |
O
|
๐๑๐๐๑๑๑๑
|
๑
| |
K
|
๐๑๐๐๑๐๑๑
|
๐
|
การแทนคำสั่งในหน่วยความจำ หน่วยควบคุมของคอมพิวเตอร์ที่อยู่ในซีพียู ทำการอ่านคำสั่งจากหน่วยความจำมาแปลความหมายและกระทำตาม คำสั่งคอมพิวเตอร์พื้นฐานที่สุดเรียกว่า ภาษาเครื่อง (Machine Language) ภาษาเครื่องมีลักษณะเป็นรหัสที่ใช้ตัวเลขฐานสอง ตัวเลขฐานสองเหล่านี้แทนชุดรหัสคำสั่ง คอมพิวเตอร์เครื่องหนึ่งมีคำสั่งที่ใช้ได้หลายร้อยคำสั่ง แต่ละคำสั่งจะมีความหมายเฉพาะ เช่น คำสั่งนำข้อมูลที่มีค่าเป็น ๓ จากหน่วยความจำตำแหน่งที่ ๘๐๐๐ มาบวกกับข้อมูลที่มีค่าเป็น ๕ ในตำแหน่งที่ ๘๐๐๑ ผลลัพธ์ที่ได้ให้เก็บไว้ในหน่วยความจำตำแหน่งที่ ๘๐๐๒ เมื่อเขียนคำสั่งเป็นภาษาเครื่องจะมีลักษณะเป็นตัวเลขฐานสองเรียงต่อกันเป็นจำนวนมาก ซึ่งเข้าใจได้ยาก จึงมักใช้ตัวอักษรแทนรหัสภาษาเครื่องเหล่านี้ ดังตารางที่ ๔.๓
ตารางที่ ๔.๓ ตัวอย่างการแทนภาษาเครื่องในหน่วยความจำ
ตัวอักษรแทนรหัสภาษาเครื่อง
|
ภาษาเครื่อง
|
LD A,(๘๐๐๐)
|
๐๐๑๑๑๐๑๐,๐๐๐๐๐๐๐๐,๑๐๐๐๐๐๐๐
|
LD B,A
|
๐๑๐๐๐๑๑๑
|
LD A,(๘๐๐๑)
|
๐๐๑๑๑๐๑๐,๐๐๐๐๐๐๐๑,๑๐๐๐๐๐๐๐
|
ADD A,B
|
๑๐๐๐๐๐๐๐
|
LD (๘๐๐๒),A
|
๐๐๑๑๐๐๑๐,๐๐๐๐๐๐๑๐,๑๐๐๐๐๐๐๐
|
รหัสภาษาเครื่อง เมื่อเก็บอยู่ในหน่วยความจำของคอมพิวเตอร์จะมีลักษณะเรียงต่อกันไป สมมติให้ส่วนของโปรแกรมเก็บในหน่วยความจำตำแหน่งเริ่มจาก ๑๐๐๐ และข้อมูลเก็บไว้ที่ตำแหน่งเริ่มจาก ๘๐๐๐ ดังตารางที่ ๔.๔ การเก็บข้อมูลและคำสั่งลงในหน่วยความจำด้วยรหัสเลขฐานสองภาษาสั่งการพื้นฐานที่ใช้รหัสตัวเลขฐานสองนี้เรียกว่า ภาษาเครื่อง คอมพิวเตอร์ที่ใช้ซีพียูต่างตระกูลกันจะมีภาษาเครื่องที่ต่างกัน เช่น เครื่องที่ใช้ซีพียูเพนเทียมกับซีพียูที่ใช้ในเครื่องแมกอินทอช มีรหัสคำสั่งต่างกัน
<!--[endif]-->
.gif)
01101110011110110010
ตอบลบรหัสแอสกี้นี้แปลว่าอะไรค่ะ