Home
Education
Knowledge
Blog
TV
Do Good
ธรรมะ
กิจกรรม
โครงการทรูปลูกปัญญา

ภาษาคอมพิวเตอร์

Posted By Plookpedia | 28 มิ.ย. 60
1,622 Views

  Favorite

ภาษาคอมพิวเตอร์


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

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


ระดับภาษาคอมพิวเตอร์ 


เราอาจแยกภาษาของเครื่องคอมพิวเตอร์ออกเป็น ๒ ระดับคือ 

๑. ภาษาระดับต่ำ (low level language) คือ ภาษาที่เขียนตามลักษณะการทำงานของเครื่อง ดังนั้น ผู้ใช้ภาษาเหล่านี้ จำเป็นต้องเข้าใจการทำงานของเครื่องเป็นอย่างดี ภาษาเหล่านี้ ได้แก่ ภาษาเครื่อง ภาษาแอสแซมเบลอร์ และภาษามาโครแอสเซมเบลอร์ (Macro Assembler) 

๒. ภาษาระดับสูง (higher level language) เป็นภาษาที่เข้าใกล้ลักษณะภาษาที่มนุษย์ใช้ (human oriented language) มีลักษณะเป็นคำพูด หรือเป็นสมการในการคำนวณแบบเดียวกับที่เราใช้กันในวิชาพีชคณิต หรือตรีโกณมิติ ดังนั้น ภาษาระดับนี้จึงยังแบ่งออกเป็น ๒ พวกคือ 

๒.๑ ภาษาเขียนที่มีลักษณะเป็นตัวเลข (numeric lanhuage) คือ ภาษาที่ใช้เขียนชุดคำสั่งนั้น มีแนวความคิดในการบอกข้อมูล และการทำงานที่มีลักษณะเป็นตัวเลข และสมการ เช่น ภาษาฟอร์แทรน ภาษาเบสิก เป็นต้น 

๒.๒ ภาษาเขียนที่มีลักษณะเป็นสัญลักษณ์ (symbolic language) คือ ภาษาที่ใช้เขียนชุดคำสั่งนั้น มีแนวความคิดในการบอกข้อมูล และการทำงานที่มีลักษณะเป็นสัญลักษณ์ และเป็นคำพูดแทน เช่น ภาษาโคบอล ภาษา อาร์พีจี เป็นต้น 

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

ภาษาที่ใช้ในการเขียนชุดคำสั่งคอมพิวเตอร์นั้นมี ลักษณะโดยย่อดังตัวอย่างต่อไปนี้ 


ตัวอย่างชุดคำสั่งคอมพิวเตอร์ 

ชุดคำสั่งภาษาเครื่อง 


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

 

ตัวอย่างชุดคำสั่งภาษาเครื่อง

ที่อยู่

รหัสในความจำ


รหัสพิมพ์ดีด

เลขฐาน 10

เลขฐาน 2

คำสั่ง

ที่อยู่

0
1
2
3
4
5
6
8
10
12
14
16
18
20
22
24
26
28
30
32
34
36
38
40
42
44
46
48
50
52
54
56

000000
000001
000010
000011
000100
000101
000110
000100
001000
001100
001110
010000
010010
010100
010110
011000
011010
011100
011110
100000
100010
100100
100110
101000
101010
101100
101110
110000
110010
110100
110110
111000







000000
111000
100100
101100
110000
110100
010100
010000
000100
010100
100100
110000
001000
110100
000100
100100
101100
000100
100000
010000
111100
000000
010000
111100
000000
000000

000101
001010
000101
000000
000000
000001
000001
000001
000010
010010
010010
000110
000011
000011
000100
000101
000000
100010
000100
000110
000011
000001
110110
000011
000001
000110
000001
000001
000110
000001
000001
000001







O
Y
M
*
<
U
D
+
4
D
M
<
+
U
4
M
*
4
-
+
(
0
+
(
0
0

5
1
5
0
0
1
1
1
2
B
B
6
3
3
4
5
0
K
4
6
1
3
W
3
1
6
1
1
6
1
1
1

 

 

ชุดคำสั่งภาษาแอสเซมเบลอร์ 


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

 

ตัวอย่างชุดคำสั่งภาษาแอสเซมเบลอร์
              FIVEA
              TEN
              FIVEB
              STORE
              COUNT
              ONE
              START





              KEEP







              TESTV








              TYPE

           DC
           DC
           DC
           DC
           DC
           DC
           WAT
           INP
           COMP
           BRL
           BRZ
           BRH
           ADD
           STA
           LDA
           ADD
           COM
           BRZ
           STA
           BRH
           LDA
           COM
           BRL
           LDA
           DIV
           SHL
           OUP
           WAT
           SHL
           OUP
           WAT
           WAT
           END

       5
       10
       5 
       0 
       0
       1
       1
       1
       FIVEB
       KEEP
       KEEP
       START
       STORE
       STORE
       COUNT
       ONE
       FIVEA
       TESTV
       COUNT
       START
       STORE
       TEN
       TYPE
       STORE
       TEN
       6
       1
       1
       6
       1
       1
       1
       START

    FOR TEST VALUE OF COUNT
    TEST SUM BIGGER THAN 10
    FOR TEST BIGGER THAN 5
    KEEP FOR SUMMATION
    COUNT NUMBER OF INPUT
    FOR INCREMENT COUNT
    READ 1 CHARACTER
    FROM TYPE WRITER
    COMPARE WITH 5
    GO TO KEEP IF LESS THAN 5
    GO TO KEEP IF EQUAL 5
    GO TO START IF GRTER THAN 5
    SUM ACCUMULATOR BY STORE
    KEEP SUM IN STORE

     INCREMENT COUNT

     GO TO TESTV IF EQUAL 5

     GO TO READ 1 CHARACTER


     GO TO TYPE IF LESS THAN 10

      RESULT IN A2, REMAINDER IN A1
      SHIFT A2 TO A1 AND A1 TO A2
      TYPE RESULT

      SHIFT A2 TO A1

 

 

 

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


ชุดคำสั่งภาษามาโครแอสเซมเบลอร์ 


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

ตัวอย่างชุดคำสั่งภาษามาโครแอสเซมเบลอร์
  START OPEN RDR
  OPEN PUN
  GET RDR, WORK
  PUT PUN, WORK
  - -
  - -
  - -
      WORK DS CL 160
      RDR DTFCR MODE=BINARY, IOAL=BUFA, FOFA=EOF
      PUN DTERP MODE=BINARY, OUAR=BUFB, PUNR=YES
      BUFA DS CL160
      BUFB DS CL160
 

 

 

ชุดคำสั่งภาษาฟอร์แทรน 


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

คำสั่งรับส่งข้อมูล (input-output statement) ได้แก่ READ, WRITE หรือ PRINT, FORMAT 

คำสั่งคำนวณ (arithmetic statement) ได้แก่ คำสั่งที่เป็น การคำนวณ โดยทางซ้ายมือเป็นตัวแปร ทางขวามือเป็นการคำนวณ เช่น X = A + B + ๕ 

คำสั่งตรรกะ (logical statement) เป็นคำสั่งประเภทควบคุม ได้แก่ คำสั่งที่ใช้ในการทดลองค่า เช่น IF (F.EQ.B) GO TO ๑๕ หรือ GO TO (๑, ๒, ๓, ๔, ๕) และ ๑ เป็นต้น 

นอกจากนี้ ยังมีคำสั่งประกอบอื่นๆ อีก เช่น DIMENSION, DATA, CALL SUB, และ RETURN เป็นต้น 

 

ตัวอย่างชุดคำสั่งภาษาฟอร์แทรน

                                         ISTORE = 0
                                         ICOUNT = 0
      5                                 READ (1,6) IVAL
      6                                 FORMAT (I1)
                                         IF (IVAL.GT.5) GO TO  5
                                         ISTORE = ISTORE  + IVAL
                                         ICOUNT = ICOUNT   + 1
                                         IF (ICOUNT.LT.5) GO TO  5
                                         WRITE (1,7) ISTORE
      7                                 FORMAT (IZ)
                                         STOP
                                         END

 

 

 

ชุดคำสั่งภาษาเบสิก 


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

คำสั่งรับส่งข้อมูล ได้แก่ INPUT, PRINT และ READ เป็นต้น 

คำสั่งคำนวณ ได้แก่ คำสั่งที่ใช้ในการคิดคำนวณเลขต่างๆ เช่น X = A + B + ๕ หรือ Y = A + B/C 

คำสั่งตรรกะ ได้แก่ IF, FOR และ GOTO เป็นต้น 

 

ตัวอย่างชุดคำสั่งภาษาเบสิก

  10     STORE     =   0
   20     COUNT     =   0
   30     INPUT    VAL
   40     IF VAL >    5  THEN   30
   50     STORE     =   STORE + VAL
   60     COUNT     =   COUNT + 1
   70     IF COUNT     <    5 THEN 30
   80     PRINT STORE   
   90     END

 

 

 

ชุดคำสั่งภาษาโคบอล 


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

การเขียนภาษาโคบอลจะแบ่งออกเป็น ๔ ส่วนคือ 

๑. ส่วนกำหนดลักษณะ (identification division) เป็นส่วนที่บอกชื่อผู้เขียน และวันที่เขียน 

๒. ส่วนบอกลักษณะเครื่อง (environment division) เป็นส่วนที่บอกว่าจะใช้เครื่องอ่านบัตร เครื่องพิมพ์ แถบแม่เหล็ก และจานแม่เหล็กอย่างไร 

๓. ส่วนบอกลักษณะข้อมูล (data division) เป็นส่วนที่บอกว่าการจัดข้อมูลที่จะนำเข้าและแสดงผลมี ลักษณะเช่นใด รวมทั้งข้อมูลที่จำในหน่วยความจำเป็น อย่างไร 

๔. ส่วนบอกการทำงาน (procedure division) เป็นส่วนที่เขียนคำสั่งที่นำเอาข้อมูลที่กำหนดในส่วนบอกลักษณะข้อมูลมาใช้งาน 

 

ตัวอย่างชุดคำสั่งภาษาโคบอล

     IDENTIFICATION  DIVISION.
     PROGRAM-ID. SAMPLE.
     DATE-WRITEN. SEPT 15, 1965
     DATE-COMPILE. SEPT 20, 1965
     ENVIRONMENT DIVISION.
     COMFIGURATION SECTION.
     SOURCE-COMPUTER. HYPOTHETICAL.
     OPJECT-COMPUTER. HYPOTHETICAL.
     INPUT-OUTPUT. SECTION.
     FILE-CONTROL.
                                           SELECT DATA-FILE ASSIGN TO TYPEWRITER-A.
                                           SELECT LIST-FILE ASSIGN TO TYPEWRITER-A.
     DATA       DIVISION.
     FILE         SECTION.
     FD           DATA-FILE, DATA RECORD IS DATA-IN
     01            DATA-IN.
                    02    VAL                                    PICTURE   9  (01).
     FD           LIST-FILE, DATA  RECORD IS DATA-OUT.
     01           DATA-OUT.
                   02 TYPE-DATA PICTURE  9  (2).
     WORKING STORAGE SECTION.
     77            STORE                                      PICTURE    9  (02)  VALUE  0.
     77            COUNT-TIME                         PICTURE    9  (01)  VALUE  0. 
     PROCEDURE DIVISION.
     START-JOB.
                    OPEN INPUT DATA-FILE OUTPUT LIST-FILE.
     READ-FROM-TYPEWRITER.
                    READ DATA-FILE AT END GO TO STOP-JOB.
                    IF VAL GREATER THAN 5 GO TO READ-FROM-TYPEWRITER.
                    ADD VAL TO STORE.
                    ADD 1 TO COUT-TIME.
                    IF COUNT-TIME GREATER THAN 5 GO TO STOP-JOB.
                    GO TO READ-FROM-TYPEWRITER.
    STOP-JOB.
                    MOVE STORE TO TYPE-DATA.
                    WRITER DATA-OUT.
                    CLOSE DATA-FILE LIST-FILE.
                    STOP RUN    
               

 

 

 

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

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

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

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

เว็บไซต์ทรูปลูกปัญญาดอทคอมเป็นเพียงผู้ให้บริการพื้นที่เผยแพร่ความรู้เพื่อประโยชน์ของสังคม ข้อความและรูปภาพที่ปรากฏในบทความเป็นการเผยแพร่โดยผู้ใช้งาน หากพบเห็นข้อความและรูปภาพที่ไม่เหมาะสมหรือละเมิดลิขสิทธิ์ กรุณาแจ้งผู้ดูแลระบบเพื่อดำเนินการต่อไป
Tags
  • Posted By
  • Plookpedia
  • 1 Followers
  • Follow