บทที่ 5 > 5.10 ภาษาคอมพิวเตอร์ > 5.10.2 ภาษาระดับต่ำ
5/25
   
         5.10.2 ภาษาระดับต่ำ

       เนื่องจากภาษาเครื่องเป็นภาษาที่มีความยุ่งยากในการเขียนดังได้กล่าวมาแล้วจึงไม่มีผู้นิยมและมีการใช้น้อย ดังนั้นได้มีการพัฒนาภาษาคอมพิวเตอร์ขึ้นอีกระดับหนึ่ง โดยการใช้ตัวอักษรภาษาอังกฤษเป็นรหัสแทนการทำงานและใช้การตั้งชื่อตัวแปรแทนตำแหน่งที่ใช้เก็บจำนวนต่าง ๆ ซึ่งเป็นค่าของตัวแปรนั้น ๆ การใช้สัญลักษณ์ช่วยให้การเขียนโปรแกรมนี้เรียกว่าภาษาระดับต่ำ
       ภาษาระดับต่ำเป็นภาษาที่มีความใกล้เคียงกับภาษาเครื่องมาก ดังนั้นบางครั้งจึงเรียกภาษานี้ว่า ภาษาอิงเครื่อง (machine – oriented language) ตัวอย่างของภาษาระดับต่ำได้แก่ ภาษาแอสแซมบลี เป็นภาษาที่ใช้คำในอักษรภาษาอังกฤษเป็นคำสั่งให้เครื่องทำงาน เช่น ADD หมายถึง บวก SUB หมายถึง ลบ เป็นต้น การใช้คำเหล่านี้ช่วยให้การเขียนโปรแกรมง่ายขึ้นกว่าการใช้ภาษาเครื่องซึ่งเป็นตัวเลขล้วน ตารางที่ 5.1 แสดงตัวอย่างของภาษาระดับต่ำและภาษาเครื่องที่สั่งให้มีการบวกจำนวนที่เก็บอยู่ในหน่วยความจำ
   
  ตารางแสดงความสัมพันธ์ของคำสั่งในภาษาระดับต่ำและภาษาเครื่อง
   
 
ภาษาระดับต่ำ
ภาษาเครื่อง
รหัสเลขฐานสิบหก
MOV AL,05
MOV BL,08
ADD AL,BL
MOV CL,AL
10110000 00000101
10110011 00001000
00000000 11011000
10001000 11000001
B0 05
B3 08
00 D8
88 C1
   
         จากตารางบรรทัดแรก 10110000 00000101 เป็นคำสั่งให้นำจำนวน 5 (0000 0101) ไปเก็บในเรจีสเตอร์ชื่อ AL โดยส่วนแรก 10110000 คือรหัสคำสั่ง MOV ซึ่งเป็นการเคลื่อนย้ายข้อมูลจำนวนมาเก็บไว้ในเรจีสเตอร์ AL
       บรรทัดที่สอง 10110011 00001000 เป็นคำสั่งให้นำจำนวน 8 (0000 1000) ไปเก็บในเรจีสเตอร์ชื่อ BL โดยส่วนแรก 10110011 คือรหัสคำสั่ง MOV ซึ่งเป็นการเคลื่อนย้ายข้อมูลจำนวนมาเก็บไว้ในเรจีสเตอร์ BL
       บรรทัดที่สาม เป็นคำสั่งการบวกระหว่างเรจีสเตอร์ AL กับ BL หรือนำ 5 บวก 8 ผลลัพธ์เก็บในเรจีสเตอร์ AL
       บรรทัดที่สี่ เป็นการนำผลลัพธ์จากเรจีสเตอร์ชื่อ AL ไปเก็บไว้ในเรจีเตอร์ชื่อ CL
       การใช้โปรแกรมที่เขียนด้วยภาษาแอสแซมบลีนั้น เครื่องคอมพิวเตอร์ไม่สามารถทำงานได้ทันที จำเป็นต้องมีการแปลโปรแกรมจากภาษาแอสแซมบลีให้เป็นภาษาเครื่องก่อน โดยอาศัยโปรแกรมในการแปลที่มีชื่อว่าแอสแซมเบลอร์ (assembler) ซึ่งแตกต่างไปตามเครื่องคอมพิวเตอร์แต่ละชนิด ดังนั้นแอสเซมเบลอร์ของเครื่องชนิดหนึ่งจะไม่สามารถใช้แปลโปรแกรมภาษาแอสแซมบลีของชนิดอื่นๆ ได้
       ภาษาแอสแซมบลีนี้ยังคงใช้ยาก เพราะผู้เขียนโปรแกรมจะต้องเข้าใจการทำงานของเครื่องคอมพิวเตอร์อย่างละเอียด ต้องรู้ว่าจำนวนที่จะนำมาคำนวณนั้นอยู่ ณ ตำแหน่งใดในหน่วยความจำ ในทำนองเดียวกับการเขียนโปรแกรมเป็นภาษาเครื่อง ภาษาแอสแซมบลีจึงมีผู้ใช้น้อยและมักจะใช้ในกรณีที่ต้องการควบคุมการทำงานภายในของตัวเครื่องคอมพิวเตอร์
   
 
ก่อนหน้า
ถัดไป