ชุดค่าผสมสามารถเข้ารหัสได้ 3 บิต การเข้ารหัสอักขระ ไบต์ หน่วยการนำเสนอข้อมูล

แนวคิดการเข้ารหัส

นามธรรม

สารบัญ

1. ข้อมูลการเข้ารหัส

2.

3. การเข้ารหัสอักขระแป้นพิมพ์

4. การเข้ารหัสสี

5. การเข้ารหัสข้อมูลกราฟิก

6. การเข้ารหัสจำนวนเต็มและจำนวนจริง

7. การเข้ารหัสข้อมูลเสียง

8. แนวคิดของไฟล์

9. หน่วยวัดของรหัสไบนารีของข้อความ

ในทำนองเดียวกันตัวเลขที่มีน้ำหนักมากที่สุดคือรูปที่เขียนทางซ้ายมากที่สุด จำนวนที่แสดงด้วยจำนวนดังต่อไปนี้ . ค่าของตัวเลขนั้นได้มาจากการเพิ่มตัวเลขแต่ละตัวคูณด้วยปัจจัยที่แสดงถึงน้ำหนักของมัน ดังนั้นจากขวาไปซ้ายตัวเลขตัวแรกเรียกว่าหน่วยสิบสองและสามร้อยเป็นต้น ในฐาน 10 ค่าของตัวเลขนั้นได้มาจากการคูณจำนวนหน่วยด้วยหนึ่งหมื่นคูณ 10 ร้อยโดย 100 และอื่น ๆ เท่าที่เห็นจากห้อง

ตัวเลขที่เป็นผลรวมของดีกรี 10 ปัจจัยที่คูณด้วยตัวเลขแต่ละหลักนั้นคือพลังต่อเนื่องของฐานที่ใช้ ในกรณีนี้หมายเลขเดียวกันสามารถเขียนใหม่ได้ดังนี้ นั่นคือตัวเลขจะได้รับโดยการคูณแต่ละหลักด้วยฐานที่เพิ่มขึ้นโดยตัวบ่งชี้เท่ากับตำแหน่งที่ครอบครองเริ่มต้นด้วยหน่วยน้ำหนักน้อยกว่าซึ่งตำแหน่งเป็นศูนย์

10. การเป็นตัวแทนของสัดส่วนของหน่วยการวัดข้อมูล

ข้อมูลการเข้ารหัส - นี่คือการนำเสนอข้อความในรูปแบบเฉพาะ  ด้วยความช่วยเหลือของลำดับของอักขระบางตัว

กฎของการแสดงชุดอักขระหนึ่งชุดในอีกชุดหนึ่งเรียกว่ารหัส วิธีการนำเสนอข้อมูลโดยใช้อักขระสองตัว - 0    และ 1    เรียกว่ารหัสไบนารี่

สูตรทั่วไปสำหรับพื้นฐานใด ๆ ตัวเลขในฐาน 7 ไม่มีตัวเลขมากกว่า 6 เนื่องจากฐานใช้ตัวเลขตั้งแต่ 0 ถึงเท่านั้น เมื่อเขียนตัวเลขในบริเวณต่าง ๆ ปัญหาของความคลุมเครือเกิดขึ้น เพื่อหลีกเลี่ยงความสับสนดังที่แสดงในสมการข้างต้นเมื่อจัดการตัวเลขในฐานต่าง ๆ มันรวมฐานซึ่งเขียนทางด้านขวาและเป็นดัชนี

การถ่ายโอนจำนวนไปยังฐานที่แตกต่างกัน

ปัจจัยประกอบด้วยตัวเลขที่เหลือและเมื่อใช้การหารต่อเนื่องเราจะได้ตัวเลขที่เหลือตามลำดับจากน้อยไปหามาก เพื่อให้ได้งานนำเสนอในฐาน 7 การแบ่งส่วนแรกจะถูกดำเนินการส่วนที่เหลือคือ 2 และดังนั้นการปล่อยจะมีน้ำหนักน้อยกว่า หากการดำเนินการนี้ซ้ำแล้วซ้ำอีกลำดับผลลัพธ์ที่ได้จะเป็น 0 ในที่สุดและยอดเงินที่ตามมาจะสอดคล้องกับการแสดงตัวเลขในฐาน 7 ดังที่แสดงใน

บิต    เป็นเลขฐานสองหนึ่งหลัก 0   หรือ 1 . หนึ่งบิตสามารถเข้ารหัสสองค่า: 1   หรือ 0 .

   สองบิต    คุณสามารถเข้ารหัสได้สี่ค่า: 00, 01, 10, 11 .

   สามบิต    ถูกเข้ารหัส 8   ค่าที่แตกต่าง การเพิ่มหนึ่งบิตจะเพิ่มจำนวนของค่าที่สามารถเข้ารหัสได้สองเท่า

การรับตัวเลขในฐาน 7 การใช้การหารตามลำดับโดยฐานทำให้แน่ใจว่าสัมประสิทธิ์มีค่าน้อยกว่าค่าของฐานเสมอ เมื่อสิ่งนี้เกิดขึ้นไม่จำเป็นต้องมีการแยกเพิ่มเติม กระบวนการจะหยุดลงเมื่ออัตราส่วนสุดท้ายต่ำกว่าฐาน มีการอธิบายวิธีสองวิธีสำหรับการแปลจำนวนที่แสดงในฐานใด ๆ ก่อนฐาน 10 และในทางกลับกัน การรวมทั้งสองโพรซีเดอร์สามารถแปลตัวเลขที่แสดงบนพื้นฐานใด ๆ

การเข้ารหัสของตัวเลขธรรมชาติ

ข้อมูลการเข้ารหัสไบนารีที่ง่ายที่สุดที่กำหนดไว้สำหรับหน่วยประมวลผลเพื่อประมวลผลคือจำนวนของจำนวนธรรมชาติ การเป็นตัวแทนสอดคล้องกับตัวเลขในฐานข้อมูล ตัวเลขสองหลักเท่านั้นของฐานนี้ตรงกับค่าสองค่าที่สามารถจัดการวงจรดิจิตอล

การเข้ารหัสอักขระคีย์บอร์ด

D เพื่อเข้ารหัสการใช้แป้นพิมพ์อักขระเดียว8 บิต  - หนึ่งไบต์

ไบต์    - นี่คือหน่วยประมวลผลข้อมูลที่เล็กที่สุด ด้วยหนึ่งไบต์คุณสามารถเข้ารหัส 2 8 =256    ตัวละคร

มีตารางของรหัสแป้นพิมพ์ รหัสแรกด้วย 32   บน 127 เป็นมาตรฐานและจำเป็นสำหรับทุกประเทศและคอมพิวเตอร์ทุกเครื่องและในช่วงครึ่งหลัง ( 128 -255 ) แต่ละประเทศสามารถสร้างมาตรฐานของตัวเอง - ระดับชาติ

แต่เนื่องจากตัวเลขที่สามารถแสดงในเลขฐานสองเป็น 0 หรือ 1 สูตรข้างต้นจึงสามารถตีความได้อย่างง่ายดาย เมื่อกำหนดจำนวนที่แสดงในฐาน 2 จะได้รับทศนิยมเทียบเท่าโดยการเพิ่มพลังเหล่านั้นเป็น 2 ซึ่งตัวบ่งชี้ที่สอดคล้องกับสถานที่ที่เป็นตัวเลข

ปรับปรุงโครงสร้างข้อมูล

พิจารณาตัวเลขในรูปแบบไบนารี จำนวนทศนิยมเทียบเท่าได้มาจากจำนวนต่อไปนี้ ถ่ายโอนฐาน 10 ไปที่ฐาน 2 เพื่อดูว่าตัวเลขเป็นเลขคู่หรือคี่เพียงแค่ดูที่น้ำหนักที่น้อยกว่า ถ้าบิตนี้เป็นหนึ่งจำนวนจะเป็นเลขคี่ถ้าเป็นศูนย์ตัวเลขจะเป็นเลขคู่ แสดงให้เห็นถึงคุณสมบัตินี้เป็นเรื่องไม่สำคัญ ทศนิยมที่เทียบเท่ากับตัวเลขในนิพจน์ไบนารี่นั้นได้มาจากการรวมค่าของกำลังทั้งหมดเหล่านี้ด้วยข้อยกเว้นของคู่แรก ดังนั้นจำนวนคี่จะต้องมีหนึ่งในน้ำหนักที่ต่ำที่สุด

ครึ่งแรกเรียกว่าโต๊ะ ASCII  รหัสมาตรฐานอเมริกันสำหรับการแลกเปลี่ยนข้อมูล.

มีตารางการเข้ารหัสอื่น ๆ KOI8-U, Wsndows-1251, Unicode. ของตารางที่แสดงรายการตารางนั้นพิเศษ    Unicodeเพราะอักขระทุกตัวในตารางนี้ถูกเข้ารหัส ในสอง ไบต์.

รหัสสี

ในทำนองเดียวกันจำนวนคู่ใด ๆ จะต้องมีศูนย์ในน้ำหนักต่ำสุดเนื่องจากมันสามารถประกอบด้วยพลังของ 2 คู่เท่านั้น คุณสมบัติที่สองไม่เพียงใช้กับฐาน 2 แต่ยังรวมถึงฐานใดก็ได้ การดำเนินการหารและจำนวนเต็มจะดำเนินการโดยการเพิ่มศูนย์เป็นการปล่อยน้ำหนักที่ต่ำกว่าหรือโดยการลบน้ำหนักสั่งซื้อที่ต่ำกว่าตามลำดับ

สำหรับหมายเลขฐาน 10 การดำเนินการคูณด้วย 10 จะดำเนินการโดยการเพิ่มศูนย์เป็นตัวเลขที่ต่ำกว่าของน้ำหนักให้กับจำนวนที่ระบุ ในทำนองเดียวกันถ้าเราหารจำนวนทศนิยมสิบค่าสัมประสิทธิ์จะได้รับโดยไม่สนใจตัวเลขน้ำหนักที่ลดลงซึ่งจะสอดคล้องกับส่วนที่เหลือของการหาร

สีใด ๆ สามารถแทนด้วยสีหลักสามสี:   สีแดง, สีเขียว   และสีน้ำเงิน   (เรียกว่าองค์ประกอบของสี)

หากคุณเข้ารหัสจุดสีโดยใช้สามไบต์ ( 24 บิต) จากนั้น ครั้งแรก  ไบต์จะนำข้อมูลเกี่ยวกับ สีแดง  ส่วนประกอบ ที่สอง -    สีเขียวและ ที่สาม - สีน้ำเงิน. ยิ่งค่าไบต์ขององค์ประกอบสีใหญ่ขึ้นเท่าใด

การเข้ารหัสในฐาน 8 และ 16

กลับไปที่การเป็นตัวแทนไบนารีในกรณีนี้การคูณและการหารจำนวนเต็ม 2 สอดคล้องกับการดำเนินงานของการเพิ่มศูนย์เป็นน้ำหนักน้อยลงเล็กน้อยหรือลบตัวเลขน้ำหนักที่สูงขึ้น การเข้ารหัสพื้นฐาน 8 แม้ว่าจะไม่ได้มีประโยชน์ในบริบทของตรรกะดิจิทัล แต่ก็มีคุณสมบัติพิเศษที่ทำให้มีความสำคัญ แอปพลิเคชันของแนวคิดที่นำเสนอในตัวเลขที่เข้ารหัสในฐานข้อมูลนี้ประกอบด้วยตัวเลขระหว่าง 0 ถึงดังนั้นหลังจาก 7 หมายเลขถัดไปคือ 10 และหลังจาก 77 หมายเลขถัดไป

การตั้งค่าใด ๆ (จาก 0   ถึง 255)   สำหรับแต่ละสามไบต์ที่มีการเข้ารหัสสีคุณสามารถเข้ารหัสใด ๆ 16,5 ล้านดอกไม้.

การเข้ารหัสข้อมูลกราฟิก

ในการแปลหมายเลขที่กำหนดในฐาน 10 เป็นฐาน 8 จะมีการดำเนินการหารตามลำดับระหว่าง 8 ซึ่งจะได้รับตัวเลขที่เกี่ยวข้อง โดยหลักการแล้วคุณสามารถแปลงตัวเลขในรูปแบบไบนารีให้เป็นตัวเลขในฐานข้อมูล อย่างน้อยคุณสามารถได้รับการเป็นตัวแทนในฐานเลขฐานสิบ 10 จากนั้นทำการถ่ายโอนไปยังฐาน แต่การแปลนี้สามารถทำได้โดยตรงหรือไม่

มีการตรวจพบการวิเคราะห์การปฏิบัติงานที่จำเป็นสำหรับการโอนซึ่งสามารถทำได้ทันที การหารระหว่าง 8 ในเลขฐานสองนั้นสอดคล้องกับการหารระหว่างฐานพลังงานโดยเฉพาะอย่างยิ่ง 2 3 ตามที่อธิบายไว้ข้างต้นการดำเนินการนี้เทียบเท่ากับสามส่วนระหว่าง 2 หรือเท่ากันเอาสามบิตที่มีน้ำหนักน้อยกว่าจากหมายเลข หมวด ผลลัพธ์ทั้งสองนี้เป็นสิ่งที่จำเป็นสำหรับการถ่ายโอน

เข้ารหัสสีของจุดเดียวเรียกว่า จำเป็นต้องใช้หนึ่งสองหรือสามไบต์ขึ้นอยู่กับจำนวนสีที่จะส่ง ในการเข้ารหัสรูปภาพคุณต้องแบ่งรูปภาพออกเป็นจุดต่างๆ ยิ่งมีคะแนนมากเท่าไหร่การถ่ายโอนที่แม่นยำยิ่งขึ้นก็จะยิ่งมากขึ้นเท่านั้น จากนั้นเริ่มจากมุมซ้ายบนและเคลื่อนที่ไปตามเส้นจากซ้ายไปขวาเข้ารหัสสีของแต่ละจุด

ดังนั้นเพื่อที่จะแปลงตัวเลขโดยตรงจากรหัสไบนารี่เป็นฐาน 8 กลุ่มของสามหรือสามบิตเริ่มต้นด้วยอันที่เล็กกว่าและการแปลของแต่ละกลุ่มของ 3 บิตเป็นตัวเลขระหว่าง 0 ถึงสามหลักเลขฐานสองสามารถแทนตัวเลขได้อย่างแม่นยำจาก 0 ถึง 7 ตามที่แสดงในภาพ

การติดต่อระหว่างกลุ่มของ 3 บิตและตัวเลขในฐานแปด หากในกลุ่มสุดท้ายไม่มี 3 บิตบิตที่หายไปจะถูกพิจารณาด้วยค่าศูนย์ เขายกตัวอย่างว่าการแปลนี้เสร็จสิ้นอย่างไร เมื่อพิจารณาถึงความง่ายในการแปลงเลขฐานสองเป็นฐานแปดและในทางกลับกันฐานหลังถูกใช้แทนการแสดงจำนวนฐานสองที่กะทัดรัดยิ่งขึ้น แทนที่จะเขียนชุดของคนและศูนย์มันเทียบเท่าเลขฐานแปดจะถูกเขียน แนวคิดนี้เป็นเรื่องธรรมดามากที่จะระบุว่าหมายเลขนั้นถูกเขียนในฐาน 8 แทนที่จะเพิ่มดัชนีหลังตัวเลขที่มีน้ำหนักน้อยกว่าศูนย์จะถูกเพิ่มทางซ้าย

การเข้ารหัสจำนวนเต็มและจำนวนจริง

ทั้งหมด  หมายเลขจะถูกเข้ารหัสอย่างง่าย ๆ ด้วยการโอนหมายเลขจากระบบหมายเลขหนึ่งไปอีกระบบหนึ่ง

สำหรับการเข้ารหัส จริง ตัวเลขใช้การเข้ารหัส 80 บิต ในกรณีนี้จำนวนจะถูกแปลงเป็นรูปแบบมาตรฐาน

กระบวนการแปลโดยตรงมากนี้ได้มาจากคุณสมบัติที่ฐาน 8 คือพลังของฐาน เนื่องจากคุณสมบัตินี้หน่วยงานที่ตามมาและการได้รับส่วนที่เหลือจะไม่มีอะไรมากไปกว่าการจัดกลุ่มบิตที่เริ่มต้นด้วยน้ำหนักที่เล็กลง Base 8 ไม่ใช่คนเดียวที่มีคุณสมบัตินี้ ฐานถัดไปตามลำดับจากน้อยไปมากซึ่งเป็นพลังของสองคือฐาน ฉันสามารถเขียนตัวเลขในฐานข้อมูลนี้ได้หรือไม่ ตามแนวคิดที่นำเสนอในที่เดียวคุณต้องมีตัวเลขให้มากที่สุดเท่าที่ฐานจะบ่งบอกเริ่มต้นด้วยศูนย์

การแปลตัวเลขจากระบบตัวเลขหนึ่งไปเป็นอีกระบบหนึ่ง

นอกเหนือจากการใช้ตัวเลขสิบหลักจาก 0 ถึง 9 จะต้องใช้ตัวเลขอีกหกหลัก การเข้ารหัสนี้เรียกอีกอย่างว่าการเข้ารหัสเลขฐานสิบหก เป็นไปได้ไหมที่จะทำการแปลโดยตรงของเลขฐานสองเป็นเลขฐานสิบหก? การดำเนินการที่จำเป็นเพื่อให้ได้ตัวเลขคือการหารระหว่าง แต่ในฐานะกำลัง 2 การดำเนินการประกอบด้วยการละทิ้งสี่บิตของน้ำหนักที่ต่ำกว่าของเลขฐานสองซึ่งสอดคล้องกับส่วนที่เหลือ ดังนั้นเพื่อให้ได้เลขฐานสิบหกจากเลขฐานสองต้องทำการจัดกลุ่มบิตสี่ถึงสี่ไว้ด้วยกันโดยเริ่มจากบิตที่มีน้ำหนักน้อยที่สุด

การเข้ารหัสเสียง

เทคนิคและวิธีการเข้ารหัสข้อมูลเสียงมาถึงเทคโนโลยีคอมพิวเตอร์ในภายหลัง ผลที่ได้คือวิธีการเข้ารหัสข้อมูลเสียงด้วยรหัสไบนารีนั้นอยู่ไกลจากมาตรฐานและมีความหลากหลายมาก

M มีสองทิศทางการเข้ารหัสหลัก: วิธี เอฟเอ็ม   (การสลายตัวของเสียงที่ซับซ้อนเป็นชุดฮาร์โมนิ) และวิธีการ การสังเคราะห์ตารางคลื่น  (จัดเก็บในตารางที่แยกต่างหากของตัวอย่างหมายเลขของเสียงดนตรีต่างๆ)

แต่ละคนจะถูกแปลงเป็นเลขฐานสิบหก ด้วย 4 บิตตัวเลข 16 หลักที่ใช้โดยฐาน 16 จะถูกเข้ารหัสตามที่แสดง ความสอดคล้องระหว่างกลุ่มของ 4 บิตและตัวเลขในรูปแบบเลขฐานสิบหก เช่นเดียวกับในกรณีของฐาน 8 ฐานเลขฐานสิบหกจะถูกนำมาใช้แทนการแสดงจำนวนฐานสองที่กะทัดรัดยิ่งขึ้น มันแสดงตัวอย่างของการติดต่อระหว่างการเป็นตัวแทนไบนารีและเลขฐานสิบหก การแปลงเลขฐานสองเป็นฐานสิบหก

การแปลงจากฐานสิบหกเป็นฐาน 10 จะเหมือนกันกับส่วนที่เหลือของฐาน ในส่วนก่อนหน้านี้เราเห็นวิธีการเข้ารหัสตัวเลขธรรมชาติในรูปแบบไบนารี การเป็นตัวแทนของตัวเลขสอดคล้องกับชุดของบิต แต่จำเป็นต้องมีบิตจำนวนเท่าใดในการแทนค่าจำนวนธรรมชาติ เนื่องจากมีจำนวนอนันต์คำตอบคือบิตไม่สิ้นสุด แต่เพื่อให้รูปแบบดิจิทัลในการควบคุมจำนวนประเภทนี้การแสดงของมันจะต้องมีขนาด จำกัด

   แนวคิดของไฟล์

ในคอมพิวเตอร์ข้อมูลใด ๆ (ข้อความตัวเลขรูปภาพเสียง) จะแสดงเป็นลำดับของไบต์ เพื่อให้คอมพิวเตอร์สามารถแยกแยะข้อมูลทุกชนิดได้แนวคิดเช่น รูป.

แต่ละกลุ่มของไบต์ที่แสดงถึงข้อมูลที่เข้ารหัสบางอย่างนั้นเรียกว่าไฟล์ ไฟล์  ต้องมีชื่อเฉพาะของรูปแบบเฉพาะ

หน่วยเก็บข้อมูล

ข้อ จำกัด นี้หมายความว่านอกเหนือจากการกำหนดรูปแบบที่องค์ประกอบที่จำเป็นจะถูกเข้ารหัสโดยใช้รหัสไบนารีขนาดของการเข้ารหัสจะต้องตั้งค่าและสิ่งที่จะเกิดขึ้นเมื่อการเข้ารหัสนี้ไม่เพียงพอ ตัวอย่างเช่นมันเป็นธรรมเนียมในการแสดงตัวเลขธรรมชาติในรูปแบบไบนารีที่มีขนาด 10 บิต สามารถแสดงเฉพาะตัวเลขในช่วง

ผลลัพธ์ถูกคำนวณ แต่การนำเสนอด้วย 10 บิตนั้นเป็นไปไม่ได้ ในสถานการณ์เช่นนี้คุณจะได้รับตัวเลขซึ่งเป็นไปไม่ได้มันเรียกว่าล้นหรือ "ล้น" โปรเซสเซอร์ตรวจจับและรายงานสถานการณ์นี้เนื่องจากเป็นความผิดปกติในการเข้ารหัส

ตามชื่อไฟล์   คอมพิวเตอร์จะเป็นตัวกำหนดว่าไฟล์นั้นอยู่ที่ใดข้อมูลนั้นมีอยู่ในรูปแบบใดที่จะถูกบันทึกและด้วยโปรแกรมที่สามารถประมวลผลได้

ไฟล์   - หน่วยเก็บข้อมูลที่เล็กที่สุด ไฟล์สามารถจัดเก็บหลายสิบหลายร้อยไบต์

หน่วยของความยาวรหัสไบนารีของข้อความ

จำนวนบิตที่ใช้ในการเข้ารหัส vivo เป็นพารามิเตอร์ที่ขึ้นอยู่กับโปรเซสเซอร์ที่ใช้ ยิ่งใช้ตัวเลขมากเท่าใดก็จะสามารถแสดงตัวเลขได้มากขึ้น แต่ในเวลาเดียวกันการออกแบบตรรกะภายในที่รับผิดชอบในการปฏิบัติงานมีความซับซ้อนมากขึ้น ตลอดเวลาที่ผ่านมาตัวประมวลผลใช้จำนวนบิตมากขึ้นเพื่อแทนค่าตัวเลขเริ่มต้นจาก 8 บิตถึง 128 บิตตัวประมวลผลที่ซับซ้อนมากขึ้น

คลาสหลักของคอมพิวเตอร์

ปัญหาของขนาดการเข้ารหัสไม่ซ้ำกันเพื่อแสดงตัวเลขธรรมชาติ ชุดใด ๆ ที่มีจำนวนอนันต์ของรายการที่จะแสดงในไฟล์ไบนารีมีปัญหาเดียวกัน ขึ้นอยู่กับขนาดของการเข้ารหัสเฉพาะส่วนย่อยขององค์ประกอบที่จะปรากฏขึ้นและโปรเซสเซอร์ควรตรวจจับและแจ้งเตือนเมื่อมีความจำเป็นในการเข้ารหัสองค์ประกอบที่เป็นตัวแทนเป็นไปไม่ได้

ในการวัดข้อมูลรหัสในรูปแบบของรหัสไบนารีให้ใช้หน่วยการวัดดังกล่าว (หน่วยการวัดความจุ    อุปกรณ์เก็บข้อมูลคอมพิวเตอร์ ) :

1 กิโลไบต์ = 2 10 ไบต์ = 1024 ไบต์
   1 MB = 2 10 KB = 2 20 ไบต์ = 1048576 ไบต์
   1 GB = 2 10 MB = 2 20 KB = 2 30 ไบต์
   1 Terabyte = 2 10 GB = 2 20 MB = 2 30 Kbytes = 2 40 ไบต์

เป็นตัวแทนของสัดส่วนของหน่วยวัดข้อมูล:

หากปรับขนาดตามเงื่อนไขเพื่อพรรณนา1 บิต1.25 มิลลิเมตร,

ไบต์   ในระดับนี้จะถูกนำเสนอ   1 ซม

  KB    (กิโลไบต์) - 10 เมตร   ส่วน

  MB    (เมกะไบต์) - 10- กิโลเมตร

และ GB   (กิกะไบต์) จะขยายออกไป10,000 กมที่สอดคล้องกับระยะทางจากมอสโกถึงวลาดิวอสต็อก

  วัณโรค    (เทราไบต์) - 10,000,000 กม

สื่อการเรียนรู้ด้วยตนเองในการบรรยาย 2

การเข้ารหัส ASCII

ตารางรหัส ASCII (ASCII - รหัสมาตรฐานอเมริกันสำหรับการแลกเปลี่ยนข้อมูล - รหัสมาตรฐานอเมริกันสำหรับการแลกเปลี่ยนข้อมูล)

สามารถเข้ารหัสอักขระต่าง ๆ ได้ 256 ตัวโดยใช้ตารางรหัส ASCII (รูปที่ 1) ตารางนี้แบ่งออกเป็นสองส่วน: ส่วนหลัก (ด้วยรหัสจาก OOh ถึง 7Fh) และเพิ่มเติม (จาก 80h ถึง FFh โดยที่ตัวอักษร h หมายถึงรหัสนั้นเป็นของระบบเลขฐานสิบหก)

รูปที่ 1

หากต้องการเข้ารหัสอักขระหนึ่งตัวจากตารางจะมีการจัดสรร 8 บิต (1 ไบต์) เมื่อประมวลผลข้อมูลที่เป็นข้อความหนึ่งไบต์อาจมีรหัสของอักขระบางตัวเช่นจดหมายตัวเลขเครื่องหมายวรรคตอนเครื่องหมายการกระทำ ฯลฯ อักขระแต่ละตัวสอดคล้องกับรหัสของมันเป็นจำนวนเต็ม ในกรณีนี้รหัสทั้งหมดจะถูกรวบรวมในตารางพิเศษที่เรียกว่าการเข้ารหัส ด้วยความช่วยเหลือของพวกเขารหัสอักขระจะถูกแปลงเป็นการแสดงที่มองเห็นได้บนหน้าจอมอนิเตอร์ ดังนั้นข้อความใด ๆ ในหน่วยความจำคอมพิวเตอร์จะแสดงเป็นลำดับของไบต์ด้วยรหัสอักขระ

ตัวอย่างเช่นคำว่า hello! จะถูกเข้ารหัสดังต่อไปนี้ (ตารางที่ 1)

ตารางที่ 1

รหัสไบนารี

รหัสทศนิยม

รูปที่ 1 แสดงอักขระที่รวมอยู่ในมาตรฐานการเข้ารหัส (อังกฤษ) และการขยาย (รัสเซีย) ASCII

ครึ่งแรกของตาราง ASCII นั้นเป็นมาตรฐาน มันมีรหัสควบคุม (จาก 00h ถึง 20h และ 77h) รหัสเหล่านี้จะถูกลบออกจากตารางเนื่องจากไม่ได้อยู่ในองค์ประกอบข้อความ เครื่องหมายวรรคตอนและสัญญาณทางคณิตศาสตร์ยังอยู่ที่นี่: 2lh - !, 26h - &, 28h - (, 2Bh - +, ... , ตัวอักษรละตินขนาดใหญ่และขนาดเล็ก: 41h - A, 61h - a

ครึ่งหลังของตารางประกอบด้วยแบบอักษรประจำชาติตัวอักษรเทียมซึ่งสามารถสร้างตารางและสัญญาณทางคณิตศาสตร์พิเศษได้ ส่วนล่างของตารางรหัสสามารถเปลี่ยนได้โดยใช้ไดรเวอร์ที่เหมาะสม - โปรแกรมเสริมการควบคุม เทคนิคนี้ช่วยให้คุณใช้แบบอักษรและแบบอักษรหลายแบบได้

การแสดงผลสำหรับรหัสอักขระแต่ละตัวควรแสดงภาพของตัวละครไม่ใช่รหัสดิจิทัล แต่เป็นภาพที่สอดคล้องกันเนื่องจากอักขระแต่ละตัวมีรูปร่างเป็นของตัวเอง คำอธิบายของรูปร่างของอักขระแต่ละตัวจะถูกเก็บไว้ในหน่วยความจำการแสดงผลพิเศษ - ตัวสร้างอักขระ ตัวอย่างเช่นการแสดงสัญลักษณ์บนหน้าจอแสดงผลของ IBM PC จะดำเนินการด้วยความช่วยเหลือของจุดที่สร้างเมทริกซ์สัญลักษณ์ แต่ละพิกเซลในเมทริกซ์นั้นเป็นองค์ประกอบของภาพและอาจจะสว่างหรือมืด จุดมืดถูกเข้ารหัสด้วยหมายเลข 0 แสง (สว่าง) คือ 1 หากพิกเซลมืดถูกแสดงด้วยจุดในเขตเมทริกซ์ของเครื่องหมายและพิกเซลสว่างจะแสดงด้วยเครื่องหมายดอกจันคุณสามารถแสดงรูปร่างของสัญลักษณ์

ผู้คนในประเทศต่าง ๆ ใช้สัญลักษณ์เพื่อเขียนคำของภาษาแม่ ทุกวันนี้แอปพลิเคชั่นส่วนใหญ่รวมถึงระบบอีเมลและเว็บเบราว์เซอร์ล้วน แต่มีขนาด 8 บิตซึ่งสามารถแสดงและรับรู้อักขระที่ถูกต้องเพียง 8 บิตเท่านั้นตามมาตรฐาน ISO-8859-1

โลกนี้มีอักขระมากกว่า 256 ตัว (หากคุณใช้อักษรซีริลลิก, อาราบิค, จีน, ญี่ปุ่น, เกาหลีและไทย) และมีตัวละครใหม่ปรากฏขึ้นเรื่อย ๆ และสิ่งนี้สร้างช่องว่างต่อไปนี้สำหรับผู้ใช้หลายคน:

ไม่สามารถใช้อักขระของชุดการเข้ารหัสที่แตกต่างกันในเอกสารเดียวกันได้ เนื่องจากเอกสารข้อความแต่ละชุดใช้การเข้ารหัสของตัวเองจึงเกิดความยุ่งยากอย่างมากกับการรู้จำข้อความอัตโนมัติ

สัญลักษณ์ใหม่ปรากฏขึ้น (ตัวอย่างเช่น: ยูโร) ซึ่งเป็นผลมาจาก ISO ที่พัฒนามาตรฐานใหม่ ISO-8859-15 ซึ่งคล้ายกับมาตรฐาน ISO-8859-1 มาก ความแตกต่างมีดังนี้: สัญลักษณ์สำหรับการกำหนดสกุลเงินเก่าซึ่งไม่ได้ใช้ในปัจจุบันถูกลบออกจากตารางการเข้ารหัสของมาตรฐาน ISO-8859-1 เก่าเพื่อให้มีที่ว่างสำหรับสัญลักษณ์ที่เพิ่งเกิดใหม่ (เช่นยูโร) เป็นผลให้ผู้ใช้อาจมีเอกสารเดียวกันในดิสก์ แต่ในการเข้ารหัสที่แตกต่างกัน วิธีการแก้ไขปัญหาเหล่านี้คือการใช้ชุดการเข้ารหัสระหว่างประเทศเพียงชุดเดียวซึ่งเรียกว่าการเข้ารหัสสากลหรือ Unicode

การเข้ารหัส Unicode

มาตรฐานดังกล่าวได้รับการเสนอในปี 1991 โดย Unicode Consortium (Unicode Consortium, Unicode Inc. ) แอปพลิเคชันของมาตรฐานนี้อนุญาตให้เข้ารหัสอักขระจำนวนมากจากสคริปต์ที่แตกต่างกัน: ตัวอักษรจีนสัญลักษณ์ทางคณิตศาสตร์ตัวอักษรของตัวอักษรกรีกตัวอักษรละตินและอักษรซีริลลิกสามารถอยู่ร่วมกันในเอกสาร Unicode และการสลับหน้ารหัสไม่จำเป็น

มาตรฐานประกอบด้วยสองส่วนหลัก: ชุดอักขระสากล (UCS, ชุดอักขระสากล) และชุดอักขระ (UTF, รูปแบบการแปลง Unicode) ชุดอักขระสากลกำหนดความสอดคล้องแบบหนึ่งต่อหนึ่งระหว่างอักขระและรหัส - องค์ประกอบของพื้นที่โค้ดที่แสดงถึงจำนวนเต็มไม่เป็นลบ ตระกูลการเข้ารหัสกำหนดการแสดงเครื่องของลำดับของรหัส UCS

มาตรฐาน Unicode ได้รับการออกแบบมาเพื่อสร้างการเข้ารหัสอักขระเดียวของภาษาเขียนสมัยใหม่และโบราณจำนวนมาก อักขระแต่ละตัวในมาตรฐานนี้ถูกเข้ารหัสด้วย 16 บิตซึ่งอนุญาตให้ครอบคลุมจำนวนอักขระที่ใหญ่กว่าการเข้ารหัส 8 บิตที่นำมาใช้ก่อนหน้านี้ ข้อแตกต่างที่สำคัญอื่น ๆ ระหว่าง Unicode และระบบการเข้ารหัสอื่น ๆ คือมันไม่เพียง แต่กำหนดรหัสที่ไม่ซ้ำกันให้กับตัวละครแต่ละตัวเท่านั้น แต่ยังกำหนดคุณสมบัติต่าง ๆ ของตัวละครนี้เช่น:

    ประเภทตัวอักษร (ตัวพิมพ์ใหญ่ตัวอักษรตัวพิมพ์เล็กตัวเลขเครื่องหมายวรรคตอน ฯลฯ );

    คุณลักษณะของสัญลักษณ์ (แสดงจากซ้ายไปขวาหรือจากขวาไปซ้ายเว้นวรรคเส้นแบ่ง ฯลฯ );

    ตัวอักษรตัวพิมพ์ใหญ่หรือตัวพิมพ์เล็กที่สอดคล้องกัน (สำหรับตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ตามลำดับ);

    ค่าตัวเลขที่สอดคล้องกัน (สำหรับอักขระตัวเลข)

ช่วงรหัสทั้งหมดตั้งแต่ 0 ถึง FFFF แบ่งออกเป็นชุดย่อยมาตรฐานหลายชุดแต่ละชุดสอดคล้องกับตัวอักษรของภาษาหรือกลุ่มของอักขระพิเศษที่คล้ายกันในฟังก์ชั่น แผนภาพด้านล่างมีรายการทั่วไปของชุดย่อย Unicode 3.0 (รูปที่ 2)

รูปที่ 2

มาตรฐาน Unicode เป็นพื้นฐานสำหรับการจัดเก็บและข้อความในระบบคอมพิวเตอร์ที่ทันสมัยจำนวนมาก อย่างไรก็ตามมันเข้ากันไม่ได้กับอินเทอร์เน็ตโปรโตคอลส่วนใหญ่เนื่องจากรหัสของมันสามารถมีค่าไบต์ใด ๆ และโปรโตคอลมักจะใช้ไบต์ 00 - 1F และ FE - FF เป็นบริการ เพื่อให้บรรลุความเข้ากันได้มีการพัฒนาฟอร์แมตการแปลง Unicode (UTFs, Unicode Format Format) หลายรูปแบบซึ่งส่วนใหญ่ในปัจจุบันคือ UTF-8 รูปแบบนี้กำหนดกฎต่อไปนี้สำหรับการแปลงรหัส Unicode แต่ละชุดเป็นไบต์ (ตั้งแต่หนึ่งถึงสาม) ที่เหมาะสมสำหรับการส่งผ่านอินเทอร์เน็ตโปรโตคอล

ที่นี่ x, y, z แสดงถึงบิตของซอร์สโค้ดซึ่งจะต้องแตกเริ่มต้นด้วยอายุน้อยที่สุดและป้อนเข้าไปในไบต์ของผลลัพธ์จากขวาไปซ้ายจนกว่าตำแหน่งที่ระบุทั้งหมดจะถูกเติมเต็ม

การพัฒนามาตรฐาน Unicode เพิ่มเติมนั้นเกี่ยวข้องกับการเพิ่มภาษาใหม่ลงไปคือ อักขระในช่วง 10000 - 1FFFF, 20000 - 2FFFF เป็นต้นซึ่งควรรวมการเข้ารหัสสำหรับสคริปต์ของภาษาที่ตายแล้วซึ่งไม่รวมอยู่ในตารางด้านบน เพื่อเข้ารหัสอักขระเพิ่มเติมเหล่านี้รูปแบบ UTF-16 ใหม่ได้รับการพัฒนา

ดังนั้นจึงมี 4 วิธีพื้นฐานของการเข้ารหัสไบต์ในรูปแบบ Unicode:

UTF-8: 128 อักขระถูกเข้ารหัสในหนึ่งไบต์ (รูปแบบ ASCII), 1920 ตัวอักษรถูกเข้ารหัสด้วย 2 ไบต์ ((โรมัน, กรีก, ซิริลลิก, คอปติก, อาร์เมเนีย, ฮิบรู, อักษรอาหรับ), 63488 ตัวอักษรที่เข้ารหัสด้วย 3 ไบต์ ฯลฯ ) ส่วนที่เหลืออีก 2 147 418 112 ตัวอักษร (ยังไม่ได้ใช้) สามารถเข้ารหัสด้วย 4, 5 หรือ 6 ไบต์

UCS-2: อักขระแต่ละตัวมี 2 ไบต์ การเข้ารหัสนี้มีอักขระ Unicode 65,535 ตัวแรกเท่านั้น

UTF-16: เป็นส่วนเสริมของ UCS-2 รวม 1,114,112 อักขระในรูปแบบ Unicode อักขระ 65,535 ตัวแรกแสดงด้วย 2 ไบต์ส่วนที่เหลือ 4 ไบต์

USC-4: อักขระแต่ละตัวถูกเข้ารหัสด้วย 4 ไบต์

gastroguru © 2017