fbpx
วิกิพีเดีย

คอมไพเลอร์

ระวังสับสนกับ อินเทอร์พรีเตอร์

คอมไพเลอร์ (อังกฤษ: compiler) หรือ โปรแกรมแปลโปรแกรม, ตัวแปลโปรแกรม เป็น โปรแกรมคอมพิวเตอร์ที่ทำหน้าที่แปลงชุดคำสั่งภาษาคอมพิวเตอร์หนึ่ง ไปเป็นชุดคำสั่งที่มีความหมายเดียวกัน ในภาษาคอมพิวเตอร์อื่น

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

รูปแสดงขั้นตอนการทำงานของตัวแปลโปรแกรม

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

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

การแปลโปรแกรม

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

อ้างอิง

  1. ศัพท์บัญญัติ ราชบัณฑิตยสถาน 2017-07-15 ที่ เวย์แบ็กแมชชีน (สืบค้นออนไลน์)

ดูเพิ่ม

คอมไพเลอร, งก, ามภาษา, ในบทความน, ไว, ให, านและผ, วมแก, ไขบทความศ, กษาเพ, มเต, มโดยสะดวก, เน, องจากว, เด, ยภาษาไทยย, งไม, บทความด, งกล, าว, กระน, ควรร, บสร, างเป, นบทความโดยเร, วท, ดระว, งส, บสนก, นเทอร, พร, เตอร, งกฤษ, compiler, หร, โปรแกรมแปลโปรแกรม, วแปลโปร. lingkkhamphasa inbthkhwamni miiwihphuxanaelaphurwmaekikhbthkhwamsuksaephimetimodysadwk enuxngcakwikiphiediyphasaithyyngimmibthkhwamdngklaw krann khwrribsrangepnbthkhwamodyerwthisudrawngsbsnkb xinethxrphrietxr khxmiphelxr xngkvs compiler hrux opraekrmaeplopraekrm twaeplopraekrm 1 epn opraekrmkhxmphiwetxrthithahnathiaeplngchudkhasngphasakhxmphiwetxrhnung ipepnchudkhasngthimikhwamhmayediywkn inphasakhxmphiwetxrxunkhxmiphelxrswnihy cathakaraepl rhstnchbb source code thiekhiyninphasaradbsung epn phasaradbta hruxphasaekhruxng sungkhxmphiwetxrsamarththicathanganidodytrng xyangirktam karaeplcakphasaradbtaepnphasaradbsung kepnipid odyichtwaeplopraekrmyxnklb decompiler rupaesdngkhntxnkarthangankhxngtwaeplopraekrm phllphthkhxngkaraeplopraekrm khxmiphl odythwip thieriykwa xxbecktokhd caprakxbdwyphasaekhruxng Machine code thietmipdwykhxmulekiywkbchuxaelasthanthikhxngaetlacud aelakareriykichwtthuphaynxk Link object sahrbfngkchnthiimidxyuin xxbeckt sahrbekhruxngmuxthieraichrwm xxbecktekhadwykn caeriykwaopraekrmechuxmoyngephuxthiphllphththixxkmainkhnsudthay epniflthiphuichnganthwipsamarthichnganidsadwkkhxmiphelxrthismburntwaerk khux phasafxraethrn FORTRAN khxng ixbiexm inpi kh s 1957 aela phasaokhbxl COBOL kepnkhxmiphelxrtwaerk thisamarththanganidbnhlay sthaptykrrmthangkhxmphiwetxr karphthnatwaeplphasarudhnaxyangrwderw aelaerimmirupaebbthichdecnyingkhuntxma inchwngthswrrs 1960karaeplopraekrm aekikhkarthanganerimcaktwaeplopraekrmcaxanrhstnchbbkhxngphasann aelwerimtrwcsxbkhwamphidphlad thaphbkcaaeplopraekrmimphanaelaihphuichaekikhrhstnchbbkxn emuxaeplphan khxmiphelxrcasrangiflwtthu obj bndxsaela o bnlinuks khunma aelwkhxmiphelxrcaechuxmoyngaefmkhxmulwtthuekhakbrhstnchbb aelasrangiflexkskhiwt exe bndxs khunmaxangxing aekikh sphthbyyti rachbnthitysthan Archived 2017 07 15 thi ewyaebkaemchchin subkhnxxniln duephim aekikh karekhiynopraekrmkhxmphiwetxr bthkhwamekiywkbkhxmphiwetxr xupkrntang hruxekhruxkhayniyngepnokhrng khunsamarthchwywikiphiediyidodyephimkhxmul duephimthi sthaniyxy ethkhonolyisarsneths ekhathungcak https th wikipedia org w index php title khxmiphelxr amp oldid 9561860, wikipedia, วิกิ หนังสือ, หนังสือ, ห้องสมุด,

บทความ

, อ่าน, ดาวน์โหลด, ฟรี, ดาวน์โหลดฟรี, mp3, วิดีโอ, mp4, 3gp, jpg, jpeg, gif, png, รูปภาพ, เพลง, เพลง, หนัง, หนังสือ, เกม, เกม