คำสั่งมอบหมายคืออะไร?

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

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

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

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

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