Page 4 - Bai01 NNLT Assembly (Hop Ngu)
P. 4

Trường TCN KTCN HÙNG VƯƠNG                                GIÁO TRÌNH CẤU TRÚC MÁY TÍNH

                    −  Tên (symbol, name): Là một dãy các ký tự dùng để biểu thị tên hằng,

                        tên biến, tên nhãn, tên chương trình con, tên đoạn… Tên do người

                        lập trình đặt. Một tên có thể chứa:
                          •  Các ký tự chữ: A → Z, a → z

                          •  Các chữ số: 0 → 9

                          •  Các ký tự đặc biệt: . ? @ _ $
                          •  Ký tự đầu tiên của tên không thể là ký tự số mà phải là ký tự chữ

                             hoặc các ký tự đặc biệt để Assembler có thể phân biệt sự khác

                             nhau giữa tên và số. Dấu chấm không thể dùng trong một tên chỉ
                             có thể dùng là ký tự đầu của nhãn.


                    2) Cấu trúc một lệnh hợp ngữ
                  Một lệnh hợp ngữ gồm bốn phần:

                         [Label]        [Mnemonic]         [Operand]          [;Comment]

                  Mỗi  dòng  chỉ  chứa  một  lệnh  hợp  ngữ  và  mỗi  lệnh  phải  nằm  trên  một
            dòng. Mỗi  phần phải  cách nhau bằng một hay nhiều  ký tự  ngăn cách. Mỗi

            dòng tối đa 128 ký tự.

                    a) Nhãn (Label): Nhãn chỉ là một tên đại diện cho các số, chuỗi ký tự
                        hoặc các vị trí trong bộ nhớ.

                  Ví dụ: Tính tổng 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8
            DOSEG                               MOV DS, AX                    SumLoop:

            .MODEL SMALL                        CALL Sumproc                     ADD Sum, AX
            .STACK 100h                         MOV AX, 4C00h                    INC AX
            .DATA                               INT 21h                          LOOP SumLoop

                 Sum DW ?                    SumProc Proc                        RET
            .CODE                               MOV Sum, 0                    SumProc Endp

            Begin:                              MOV AX, 1                     END Begin
               MOV AX, @DATA                    MOV CX, 8

                    −  Nhãn Sum tương đương với biến địa chỉ 16 bit

                    −  Nhãn SumProc là tên chương trình con chứa mã các phần khác của
                        chương trình có thể gọi tới.

                    −  Nhãn SumLoop tương đương với địa chỉ của lệnh ADD Sum, AX để

                        lệnh LOOP ở cuối có thể quay trở lại vị trí lệnh thích hợp.
                    −  Mỗi nhãn chỉ định nghĩa một lần trừ một số trường hợp đặc biệt sẽ

                        nói sau. Nhãn có thể dùng làm toán tử. Nhãn có thể xuất hiện một

                        mình trên dòng lệnh trong trường hợp này trị của nhãn là địa chỉ của
                        lệnh ở dòng kế tiếp

            Biên soạn: TÔ HUỲNH THIÊN TRƯỜNG                                                           Trang 6
   1   2   3   4   5   6   7   8