C เทียบกับ C
การพัฒนาโปรแกรมสมองกลฝังตัวเป็นสาขาที่เติบโตอย่างรวดเร็วในปัจจุบัน มีความจำเป็นอย่างต่อเนื่องในการเขียนแอปพลิเคชันแบบฝังตัวโดยใช้ภาษาโปรแกรมระดับสูง (เช่น C) ด้วยเหตุผลสองประการเป็นหลัก ประการแรก ความซับซ้อนของแอปพลิเคชันแบบฝังตัวกำลังเพิ่มขึ้น และการจัดการแอปพลิเคชันโดยใช้ภาษาระดับต่ำ เช่น ภาษาแอสเซมบลีกลายเป็นเรื่องยากมาก ประการที่สอง เนื่องจากโปรเซสเซอร์รุ่นใหม่ออกบ่อยมาก จึงจำเป็นต้องอัปเดต/ปรับโปรแกรมฝังตัวของคุณให้เป็นชุดคำสั่งที่ใหม่กว่าอย่างต่อเนื่อง คุณลักษณะการนำกลับมาใช้ใหม่ได้ในภาษาเช่น C สามารถแก้ปัญหาทั้งสองนี้ได้
Embedded C เป็นขั้นตอนในการปรับภาษาการเขียนโปรแกรม C เพื่อเขียนแอปพลิเคชันฝังตัวที่มีประสิทธิภาพ Embedded C เป็นส่วนขยายของภาษาการเขียนโปรแกรม C ที่ช่วยให้โปรแกรมเมอร์มีคุณสมบัติที่มีประโยชน์ทั้งหมดของภาษาการเขียนโปรแกรมระดับสูง ในขณะที่มีความสามารถในการสื่อสารโดยตรงกับโปรเซสเซอร์เป้าหมายแบบฝังตัวเพื่อประสิทธิภาพที่ดีขึ้น ตลอดหลายปีที่ผ่านมา โปรแกรมเมอร์ C อิสระจำนวนมากได้เพิ่มส่วนขยายเพื่อรองรับการเข้าถึงฮาร์ดแวร์ I/O พื้นฐาน Embedded C คือความพยายามที่จะรวมแนวทางปฏิบัติเหล่านั้นเข้าด้วยกันและจัดให้มีรูปแบบเดียวกัน
C คืออะไร
C เป็นภาษาโปรแกรมระดับสูงสำหรับวัตถุประสงค์ทั่วไปที่พัฒนาโดย Dennis Ritchie ในปี 1970 มีวัตถุประสงค์หลักสำหรับการพัฒนาซอฟต์แวร์ระบบ แต่ยังใช้สำหรับการพัฒนาซอฟต์แวร์แอพพลิเคชั่นบ่อยมาก ภาษาการเขียนโปรแกรม C เป็นที่นิยมในหมู่โปรแกรมเมอร์ทั้งหมดที่มีคอมไพเลอร์ C อยู่ในสถาปัตยกรรมคอมพิวเตอร์เกือบทั้งหมด ภาษาซีมีอิทธิพลต่อภาษาการเขียนโปรแกรมคอมพิวเตอร์อื่นๆ เช่น C++ และ Javaอันที่จริง C++ เริ่มต้นเป็นส่วนเสริมของ C และพร้อมกับ Java มันมีไวยากรณ์ที่คล้ายกับ C.
Embedded C คืออะไร
Embedded C เป็นส่วนเสริมของภาษาการเขียนโปรแกรม C ที่ให้การสนับสนุนการพัฒนาโปรแกรมที่มีประสิทธิภาพสำหรับอุปกรณ์ฝังตัว ไม่ได้เป็นส่วนหนึ่งของภาษาซี ได้รับการพัฒนาโดยคณะทำงาน ISO ที่เรียกว่า “ส่วนขยายสำหรับภาษาการเขียนโปรแกรม C เพื่อรองรับโปรเซสเซอร์แบบฝังตัว” และอธิบายไว้ในรายงานทางเทคนิคเกี่ยวกับ Embedded C (TR 18037) ซึ่งเผยแพร่ในเดือนกุมภาพันธ์ 2547 การพัฒนา Embedded C มีเป้าหมายเพื่อส่งมอบ เพิ่มประสิทธิภาพสำหรับคุณลักษณะที่ใช้สำหรับ DSP (Digital Signal Processing) และการประมวลผลแบบฝัง พยายามเปิดใช้งานการพัฒนาแอปพลิเคชั่นแบบพกพาและมีประสิทธิภาพในโดเมนของระบบฝังตัวโดยให้การเข้าถึงโดยตรงไปยังคุณสมบัติในตัวประมวลผลเป้าหมาย
C และ Embedded C ต่างกันอย่างไร
C เป็นภาษาโปรแกรมระดับสูงสำหรับวัตถุประสงค์ทั่วไปที่ใช้กันอย่างแพร่หลายซึ่งมีไว้สำหรับการเขียนโปรแกรมระบบเป็นหลักEmbedded C เป็นส่วนขยายของภาษาการเขียนโปรแกรม C ที่สนับสนุนการพัฒนาโปรแกรมที่มีประสิทธิภาพสำหรับอุปกรณ์ฝังตัว Embedded C ไม่ได้เป็นส่วนหนึ่งของภาษา C โดยทั่วไป C ใช้สำหรับการเขียนโปรแกรมเดสก์ท็อป ในขณะที่ Embedded C นั้นเหมาะสำหรับการตั้งโปรแกรมแบบฝังตัวมากกว่า Embedded C ต่างจาก C ตรงที่โปรแกรมเมอร์สามารถพูดคุยกับโปรเซสเซอร์เป้าหมายได้โดยตรง ดังนั้นจึงให้ประสิทธิภาพที่ดีขึ้นเมื่อเทียบกับ C. C ที่สร้างไฟล์ปฏิบัติการที่ขึ้นกับ OS ในขณะที่ Embedded C cerates ไฟล์ที่โดยทั่วไปแล้วจะดาวน์โหลดโดยตรงไปยังไมโครคอนโทรลเลอร์ ต่างจาก C ตรง Embedded C มีประเภทจุดตายตัว พื้นที่หน่วยความจำหลายส่วน และการจับคู่การลงทะเบียน I/O