ชุดคำสั่งคืออะไร?

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

รหัสลับ

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

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

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

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

Opcodes ที่ผิดกฎหมาย

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

เกมคอมพิวเตอร์ในยุคแรก ๆ บางเกมใน Apple II อาศัย opcodes ที่ผิดกฎหมายโดยเฉพาะ จากนั้นพวกเขาประสบปัญหาด้านประสิทธิภาพและความเสถียรในการแก้ไข Apple IIc CPU ในภายหลังเนื่องจาก IIc ได้ลบ opcodes ที่ผิดกฎหมายที่เกมต้องการ นอกจากนี้ยังใช้รหัสที่ผิดกฎหมายในแวดวงการคุ้มครองลิขสิทธิ์เป็นวิธีการรักษาความปลอดภัยผ่านความสับสนในการต่อสู้กับโจรสลัดที่ถอดรหัสเนื้อหาของพวกเขา opcodes ที่ผิดกฎหมายบางตัวหมายถึงเครื่องมือแก้ไขข้อบกพร่องและตัวจัดการข้อผิดพลาด

ชุดคำสั่ง x86 มี opcodes ผิดกฎหมายที่ไม่มีเอกสารจำนวนมาก ที่น่าสนใจคือ สิ่งเหล่านี้บางส่วนใช้ร่วมกันระหว่างซีพียู Intel และ AMD ซึ่งบ่งชี้ว่าทั้งสองบริษัทรับรู้ถึงวัตถุประสงค์ของพวกเขาต่อสาธารณะในขณะที่ไม่มีเอกสาร

คอมไพเลอร์และการประกอบ

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

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

บทสรุป

ชุดคำสั่งคือรายการฟังก์ชันอย่างเป็นทางการที่สถาปัตยกรรม CPU สามารถเรียกใช้ได้ เป็นรายการการดำเนินการที่สามารถดำเนินการได้ การดำเนินการเหล่านี้ถูกฮาร์ดโค้ดลงใน CPU และเรียกโดยใช้ opcodes ที่เกี่ยวข้อง

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



Leave a Comment

ถ้า Powerbeats Pro ของคุณไม่ชาร์จในเคสจะทำอย่างไร

ถ้า Powerbeats Pro ของคุณไม่ชาร์จในเคสจะทำอย่างไร

ถ้า Powerbeats Pro ของคุณไม่ชาร์จ ให้ใช้แหล่งพลังงานอื่นและทำความสะอาดหูฟังของคุณ โปรดเปิดเคสขณะชาร์จหูฟังของคุณ

Canon Pixma MG5220: สแกนโดยไม่ต้องใช้หมึก

Canon Pixma MG5220: สแกนโดยไม่ต้องใช้หมึก

วิธีการเปิดใช้งานการสแกนบน Canon Pixma MG5220 เมื่อคุณหมดหมึก.

5 เหตุผลที่ทำให้แล็ปท็อปของคุณร้อนเกินไป

5 เหตุผลที่ทำให้แล็ปท็อปของคุณร้อนเกินไป

ค้นหาสาเหตุบางประการที่ทำให้แล็ปท็อปของคุณร้อนเกินไป พร้อมทั้งเคล็ดลับและกลยุทธ์ในการหลีกเลี่ยงปัญหานี้และทำให้เครื่องของคุณเย็นลง

วิธีแก้ไขข้อผิดพลาด GeForce Now รหัส 0xC272008F

วิธีแก้ไขข้อผิดพลาด GeForce Now รหัส 0xC272008F

คุณกำลังเตรียมตัวสำหรับคืนแห่งการเล่นเกมที่จะยิ่งใหญ่ – คุณเพิ่งซื้อ “Star Wars Outlaws” บนบริการสตรีมมิ่ง GeForce Now ค้นพบวิธีแก้ไขข้อผิดพลาด GeForce Now รหัส 0xC272008F เพื่อให้คุณกลับมาเล่นเกม Ubisoft ได้อีกครั้ง

พื้นฐานการพิมพ์ 3D: เคล็ดลับการบำรุงรักษาสำหรับเครื่องพิมพ์ 3D ของคุณ

พื้นฐานการพิมพ์ 3D: เคล็ดลับการบำรุงรักษาสำหรับเครื่องพิมพ์ 3D ของคุณ

การดูแลรักษาเครื่องพิมพ์ 3D ของคุณมีความสำคัญมากเพื่อให้ได้ผลลัพธ์ที่ดีที่สุด ต่อไปนี้เป็นเคล็ดลับสำคัญที่ต้องคำนึงถึง.

พื้นฐานการพิมพ์ 3D: เช็คลิสต์การบำรุงรักษาที่ต้องอ่าน

พื้นฐานการพิมพ์ 3D: เช็คลิสต์การบำรุงรักษาที่ต้องอ่าน

การรักษาอุปกรณ์ให้ในสภาพดีเป็นสิ่งจำเป็น นี่คือเคล็ดลับที่มีประโยชน์ในการรักษาเครื่องพิมพ์ 3D ของคุณให้อยู่ในสภาพที่ดีที่สุด

วิธีการใช้ AirPods กับโทรศัพท์ Samsung

วิธีการใช้ AirPods กับโทรศัพท์ Samsung

หากคุณไม่แน่ใจว่าจะซื้อ AirPods สำหรับโทรศัพท์ Samsung ของคุณหรือไม่ คู่มือนี้สามารถช่วยได้อย่างแน่นอน คำถามที่ชัดเจนที่สุดคือทั้งสองรุ่นสามารถทำงานร่วมกันได้หรือไม่

วิธีปิดเสียงชัตเตอร์ของกล้อง – Galaxy S 21 Plus

วิธีปิดเสียงชัตเตอร์ของกล้อง – Galaxy S 21 Plus

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

วิธีแก้ไขรหัสข้อผิดพลาด NVIDIA GeForce Experience 0x0003

วิธีแก้ไขรหัสข้อผิดพลาด NVIDIA GeForce Experience 0x0003

คุณพบประสบการณ์รหัสข้อผิดพลาด NVIDIA GeForce 0x0003 บนเดสก์ท็อปของคุณหรือไม่? อ่านเพื่อดูวิธีแก้ไขอย่างรวดเร็วและง่ายดาย

Pi-hole คืออะไร?

Pi-hole คืออะไร?

เรียนรู้เกี่ยวกับ Pi-hole ตัวบล็อกโฆษณาที่ทำงานที่ระดับ DNS ซึ่งสามารถบล็อกโฆษณาได้ทั่วทั้งเครือข่ายของคุณ และวิธีการติดตั้งและใช้งานได้อย่างง่ายดาย