เวิร์กสเตชันออนไลน์ของ OnWorks Linux และ Windows

โลโก้

ฟรีโฮสติ้งออนไลน์สำหรับเวิร์กสเตชัน

<ก่อนหน้านี้ | เนื้อหา | ถัดไป>

การรวบรวมคืออะไร?

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

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


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

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

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

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

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

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


 

ระบบปฏิบัติการคลาวด์คอมพิวติ้งยอดนิยมที่ OnWorks: