Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> ระบบเครือข่าย >> อินเทอร์เน็ต

Essential Primer:คอมพิวเตอร์ทำงานอย่างไรสำหรับนักเขียนโค้ดมือใหม่

Essential Primer:คอมพิวเตอร์ทำงานอย่างไรสำหรับนักเขียนโค้ดมือใหม่

โดย แดเนียล ออร์มชอว์

จุดประสงค์เดียวของคอมพิวเตอร์ของคุณคือการส่งและรับข้อมูลในรูปแบบของตัวเลข — หนึ่งและศูนย์

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

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

มนุษย์สื่อสารโดยใช้ระบบทศนิยม

เมื่อมนุษย์ต้องการสื่อสารโดยใช้ตัวเลข พวกเขาจะใช้ระบบทศนิยม ระบบทศนิยมมีตัวเลขสิบหลัก (0–9) และมนุษย์ตีความตามคอลัมน์ตัวเลขเหล่านั้นที่ปรากฏ พิจารณาเลขทศนิยม 148 เมื่อคุณอ่านตัวอย่างนี้ คุณจะทำตามขั้นตอนด้านล่างโดยไม่รู้ตัว:

Essential Primer:คอมพิวเตอร์ทำงานอย่างไรสำหรับนักเขียนโค้ดมือใหม่ _เอื้อเฟื้อภาพโดย [Danielle Ormshaw](https://twitter.com/SchnucklePi" rel="noopener" target="blank" title=")

  1. คูณตัวเลขขวาสุดด้วย 10^0
  2. คูณเลขตรงกลางด้วย 10^1
  3. คูณตัวเลขซ้ายสุดด้วย 10^2
  4. เพิ่มผลลัพธ์จากขั้นตอนที่ 1–3

เมื่อใช้ระบบนี้ คุณสามารถคาดเดาความหมายที่ถูกต้องได้ — หนึ่งร้อยสี่สิบแปด

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

คอมพิวเตอร์สื่อสารโดยใช้ระบบไบนารี่

เมื่อคอมพิวเตอร์ต้องการสื่อสารก็ใช้ระบบที่คล้ายกัน ระบบไบนารี่มีสองหลัก (0,1) และเราสามารถแยกย่อยได้ในลักษณะเดียวกับระบบทศนิยม คราวนี้ แทนที่จะทำงานกับฐาน 10 เรากำลังทำงานกับฐาน 2

พิจารณาเลขฐานสอง 110 เมื่อคอมพิวเตอร์ตีความรหัสไบนารี่นี้ คอมพิวเตอร์จะทำตามขั้นตอนด้านล่าง:

Essential Primer:คอมพิวเตอร์ทำงานอย่างไรสำหรับนักเขียนโค้ดมือใหม่ _เอื้อเฟื้อภาพโดย [Danielle Ormshaw](https://twitter.com/SchnucklePi" rel="noopener" target="blank" title=")

  1. คูณตัวเลขขวาสุดด้วย 2^0
  2. คูณเลขตรงกลางด้วย 2^1
  3. คูณตัวเลขซ้ายสุดด้วย 2^2
  4. เพิ่มผลลัพธ์จากขั้นตอนที่ 1–3

ขอย้ำอีกครั้ง ทุกครั้งที่เราเพิ่มคอลัมน์ใหม่ทางด้านซ้ายของตาราง เราจำเป็นต้องเพิ่มกำลังขึ้นหนึ่งคอลัมน์

อินเทอร์เน็ตเป็นระบบทางกายภาพที่ออกแบบมาเพื่อย้ายข้อมูล

เราได้เรียนรู้วิธีใช้รหัสไบนารี่ในการจัดเก็บข้อมูล แต่ในทางปฏิบัติแล้วมันทำงานอย่างไร

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

Essential Primer:คอมพิวเตอร์ทำงานอย่างไรสำหรับนักเขียนโค้ดมือใหม่ _ภาพประกอบเอื้อเฟื้อโดย [Twitter](https://twitter.com/SchnucklePi" rel="noopener" target="_blank" title="">Danielle Ormshaw บน

กล่าวคือ เมื่อเราต้องการเข้าชม Google เราจะไม่พิมพ์ตัวเลขลงในเบราว์เซอร์ แล้วคอมพิวเตอร์ของเราจะรู้ได้อย่างไรว่าจะส่งคำขอแต่ละรายการไปที่ใด

อินเทอร์เน็ตทำงานผ่านชุดโปรโตคอลและจุดตรวจสอบ

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

Essential Primer:คอมพิวเตอร์ทำงานอย่างไรสำหรับนักเขียนโค้ดมือใหม่ _ภาพประกอบเอื้อเฟื้อโดย [Twitter](https://twitter.com/SchnucklePi" rel="noopener" target="_blank" title="">Danielle Ormshaw บน

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

โปรโตคอลควบคุมการส่งสัญญาณ (TCP) ทำหน้าที่เป็นการตรวจสอบสินค้าคงคลัง หากมีแพ็กเก็ตทั้งหมด TCP จะส่งการตอบรับการรับไปยังอุปกรณ์ส่ง ถ้าไม่เช่นนั้น TCP จะ "ปฏิเสธที่จะลงนาม" สำหรับการจัดส่งและจะขอแพ็กเก็ตที่ขาดหายไปทั้งหมด

Essential Primer:คอมพิวเตอร์ทำงานอย่างไรสำหรับนักเขียนโค้ดมือใหม่ _ภาพประกอบเอื้อเฟื้อโดย [Danielle Ormshaw](https://twitter.com/SchnucklePi" rel="noopener" target="blank" title=")

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

อะไรต่อไป?

หากโพสต์นี้ช่วยให้คุณเข้าใจพื้นฐาน โปรดแสดงความขอบคุณด้วยเสียงปรบมือหรือติดตามฉันบน Twitter ขอให้สนุกกับการเขียนโค้ด!

เรียนรู้การเขียนโค้ดฟรี หลักสูตรโอเพ่นซอร์สของ freeCodeCamp ช่วยให้ผู้คนมากกว่า 40,000 คนได้งานในตำแหน่งนักพัฒนา เริ่มต้น