SlideShare a Scribd company logo
1 of 5
Download to read offline
BAB 4.0 : SET SURUHAN MIKROPEMPROSES/PENGAWALMIKRO DAN MEMBINA ATURCARA

4.1       Mod/Ragam Pengalamatan

      -   Mod alamat ialah pelbagai kaedah mendapatkan data yang terletak dalam daftar atau dalam
          ingatan. Untuk setiap kendalian, mod alamat memberitahu pemproses bagaimana ia perlu
          mencari atau mengira alamat kendalian sebenar. Alamat sebenar dinamai alamat berkesan dan
          dijana semasa pelaksanaan suruhan.

      -   Dengan adanya ragam pengalamatan ini, pengaturcara dapat mempelbagaikan corak penulisan
          program supaya pelaksanaannya adalah cepat, memudahkan operasi dan menjimatkan
          penggunaan ruang ingatan.

      -   Pemproses 68000 mempunyai 14 mod alamat kesemuanya yang boleh dikumpulkan kepada
          enam mod asas :

Ragam Pengalamatan               Contoh Suruhan       Penerangan
1. Mod Tersirat                  RTS                  Terdiri daripada opkod sahaja

2. Mod Terdekat (Immediate)      MOVE.B #$40,D0       Data diketahui. Contoh pertama menyatakan nilai
                                 MOVE.W #40,D5        $40 adalah data dalam heksadesimal yang akan
                                 MOVE.L #$30,D7       dipindahkan ke D0. Contoh kedua pula
                                                      menyatakan nilai 40 adalah data dalam nombor
                                                      desimal yang akan dipindahkan ke D5.

3. Mod Mutlak (absolute)         MOVE.B $7000,D3      Menggunakan alamat sebenar bagi source atau
                                 MOVE.L D4,$1234      destinasi

4. - Mod Daftar Data             MOVE.L     D0,D7     Data Register merupakan operand
     Langsung
     (data register direct)

  - Mod Daftar Alamat            MOVE.L     A3,A1     Address register merupakan operand
    Langsung                     MOVE.L     A4,D5
    (address register direct)

5. Mod Daftar Alamat Tak         MOVE.L D2,(A0)       Address register memegang alamat bagi lokasi
   Langsung                      MOVE.W (A3),D7       memori yang mengandungi operand data.
   (address register indirect)                        Contoh pertama menyatakan bahawa kandungan
                                                      data di alamat yang terdapat di A0 akan diubah
                                                      dengan data yang terdapat di D2

6. Mod Relatif
   - Mod Pascatokok              MOVE.W -(A6),D0      Alamat A6 akan ditolak 1,2 atau 4 bergantung
                                                      kepada saiz data (B, W atau L). Data di A6 baru
                                                      akan dipindahkan ke D0
  - Mod Prasusut                 MOVE.W (A6)+,D0      Cara pemindahan data ini sama dengan Address
                                                      Register Indirect kecuali address register
                                                      tersebut akan ditambah selepas data
                                                      dipindahkan. Saiz penambahan 1,2 atau 4
                                                      bergantung kepada saiz data (B, W atau L)

                                 Jadual 4.1 : Mod Ragam Pengalamatan




                                                                                                      1
4.1.1   Mod Tersirat

    -   Sesetengah suruhan 68000 tidak memerlukan sebarang kendalian dan ada pula suruhan yang
        merujuk daftar tanpa menyebut daftar yang digunakan.
    -   Contoh, RTS menyebabkan kawalan dikembalikan dari subrutin ke aturcara pemanggil
        menggunakan daftar SP.



4.1.2   Mod Terdekat (immediate)


    -   Dalam pengalamatan terdekat sesuatu suruhan mengandungi kod operasi dan kendalian.
        Kendalian ini boleh digunakan serta-merta (kedudukan terdekat) dan tiada capaian lain ke
        ingatan diperlukan. Ia berguna untuk memuat atau mengubah daftar-daftar CPU dengan pantas.
        Contohnya

                MOVE.B          #’m’, D0

    -   Menyalin nilai ASCII untuk ‘m’ ke dalam daftar D0. Simbol ‘#’ difahami oleh penghimpun untuk
        menandakan pengalamatan terdekat. Contoh lain :

                MOVE.B          #$40,D0
                MOVE.W          #$40,D5
                MOVE.W          #$30,D7

    -   Data diketahui. Contoh pertama, kedua dan ketiga menyatakan data dalam nilai nombor hex
        dipindahkan ke D0, D5 dan D7.



4.1.3   Mod Mutlak (absolute)

    -   Dalam mod pengalamatan mutlak alamat atau lokasi kendalian dinyatakan secara langsung
        sebagai sebahagian daripada suruhan. Oleh itu, tiada sebarang pengiraan diperlukan bagi
        mendapatkan alamat berkesan. Dalam pengalamatan mutlak, kendalian terletak di dalam suatu
        lokasi ingatan.

Contoh 1 :      CLR.W           $2000          ; memadam kata yang terletak di alamat 2000


Contoh 2 :      MOVE.W          $2000,D2       ; bermakna salin 16 bit dari lokasi 2000 ke D2

Contoh lain :   MOVE.B          $7000,D3
                MOVE.L          D4,$1234       ; Bermakna menggunakan alamat sebenar bagi source
                                                 atau destinasi



4.1.4   Mod Pengalamatan Daftar Langsung (direct)

    -   Dalam mod pengalamatan daftar langsung, alamat atau lokasi kendalian dinyatakan secara
        langsung sebagai sebahagian daripada suruhan. Alamat ini dibaca oleh CPU semasa membaca
        suruhan dan boleh terus digunakan. Oleh itu, tiada sebarang pengiraan diperlukan bagi
        mendapatkan alamat berkesan. Dalam pengalamatan daftar langsung, kendalian terletak di
        dalam suatu daftar data atau alamat.

    -   Kebaikan menggunakan pengalamatan daftar :

                                                                                                       2
(i)     medan alamat yang kecil sahaja diperlukan
        (ii)    tidak perlu merujuk ke ingatan

    -   Oleh sebab-sebab di atas, masa capaian data adalah pantas. Keburukan bilangan daftar yang
        terdapat dalam sistem selalunya terhad.

    -   Terbahagi kepada dua :
        (i)    Mod Daftar Data Langsung
        (ii)   Mod Daftar Alamat Langsung


Contoh 1 :      CLR.W           D1              ; memadam kata rendah dalam dafatr D1.

Contoh 2 :      MOVE.B          D0, D1          ; salin D0 ke D1 (suruhan MOVE memerlukan dua
                                                  kendalian dengan format



4.1.5   Mod Pengalamatan Tak Langsung (indirect)


    -   Pengalamatan tak langsung (indirect addressing) ialah satu kaedah pencapaian data yang
        kompleks. Ragam ini boleh dibahagikan kepada dua jenis: daftar tak langsung dan ingatan tak
        langsung.

    -   Dalam ragam pengalamatan ingatan tak langsung (indirect memory addressing) suruhan
        mengandungi satu alamat tak langsung yang menunjuk ke satu alamat ingatan yang
        mengandungi alamat berkesan bagi kendalian.

    -   Dalam suruhan pengalamatan daftar tak langsung (indirect register addressing) opkod memilih
        daftar dalaman yang mengandungi alamat berkesan yang digunakan. Suatu daftar alamat
        digunakan sebagai punca alamat suatu kendalian dalam ingatan. Isi daftar alamat dianggap
        penuding ke lokasi tersebut. Mod ini dikenali dengan tanda kurungan yang mengelilingi nama
        satu daftar alamat.

    -   Terdiri daripada Mod Daftar Alamat Tak Langsung sahaja (daftar data tiada)

    -   Format cara penulisannya :

                CLR.B           (A0)            ; isi daftar A0 ialah alamat bagi lokasi ingatan yang
                                                  dipadam.

Contoh 1 :      MOVE.L          D2, (A0)        ; A0 memegang alamat bagi lokasi memori yang
                                                  mengandungi kendalian/operand data. Kandungan
                                                  data di alamat yang terdapat di A0 akan diubah dengan
                                                  data yang terdapat di D2.



4.1.6   Mod Relatif

    -   Dalam pengalamatan relative alamat berkesan didapati dengan mencampur satu nombor
        (dipanggil offset) ke atas nilai pembilang aturcara terkini.Nilai offset menuruti opkod dalam
        suruhan. Ragam ini kerap digunakan bagi melakukan operasi cabang jarak dekat bagi gelung-
        gelung pendek

    -   Terdiri daripada mod pascatokok dan mod prasusut


                                                                                                        3
Contoh 1 :

ADD.W               (A6)+,D4                ; mod pascatokok
                                            ; kandungan A6 digunakan sebagai penunjuk lokasi data di
                                              memori. Data di lokasi memori tersebut ditambahkan ke data di
                                              dalam D4. Kemudian, berlaku penambahan sebanyak 2
                                              terhadap kandungan A6. Hasil operasi disimpan di D4.

Contoh 2 :

ADD.W               -(A6),D4                ; mod prasusut
                                            ; penambahan sebanyak 2 terhadap kandungan A6. Kandungan
                                              baru A6 digunakan sebagai penunjuk lokasi data di memori.
                                              Data di lokasi memori tersebut ditambahkan ke data di
                                              dalam D4. Hasil operasi disimpan di D4.


4.2          Konsep membina aturcara

      -      Membina aturcara bermakna menyelesaikan sesuatu masalah. Maka terdapat beberapa langkah
             yang perlu di dalam proses membina aturcara :

      (i)        Definisi Masalah
             -   Seseorang pengaturcaraan mesti mengetahui/menentukan perkara-perkara yang hendak di
                 selesaikan sebelum menulis program. Contoh : Masukkan data bagi dua nombor. Kedua
                 nombor tersebut di campurkan dan di simpan di memori.

      (ii)       Rekabentuk Logikal
             -   Permasalahan yang hendak di selesaikan ditukar ke bentuk gambarajah proses (flow chart).


                                                                   Start terminal


                                                                   Input/Output



                                                                   Operation/Process



                                                                   Logical selection



                                                                   Sub-routine


                                                                   Connector


                                                                   Connecting arrows


                                                                   End terminal


                                                                                                            4
(iii)       Pengaturcaraan
        -   Berdasarkan gambarajah proses, aturcara boleh mula dibina.
        -   Contoh :

                ORG             $7000
                MOVE.B          #12,D0
                MOVE.B          #34,D1
                ADD.B           D0,D1
                MOVE.B          D1,$7050
                END


(iv) Dokumentasi aturcara
- Contoh :

                ORG             $7000         ; program bermula di alamat $7000
                MOVE.B          #12,D0        ; data desimal 12 disimpan di D0
                MOVE.B          #34,D1        ; data desimal 34 disimpan di D1
                ADD.B           D0,D1         ; D0 + D1      D1
                MOVE.B          D1,$7050      ; kandungan byte D1 disimpan di alamat $7050
                END                           ; program ditamatkan


(v)         Analisis aturcara




                                                                                             5

More Related Content

Similar to modul-e4160-unit-3-set-suruhan-mikropemproses-pengawalmikro-dan-membina-aturcara

Bab2
Bab2Bab2
Bab2Lol L
 
Pertemuan 9.1 pengalamatan juga
Pertemuan 9.1 pengalamatan jugaPertemuan 9.1 pengalamatan juga
Pertemuan 9.1 pengalamatan jugaBuhori Muslim
 
Pertemuan 9 pengalamatan
Pertemuan 9 pengalamatanPertemuan 9 pengalamatan
Pertemuan 9 pengalamatanBuhori Muslim
 
2ka04 Kelompok 7
2ka04 Kelompok 72ka04 Kelompok 7
2ka04 Kelompok 7Nugroho W
 
Kelompok 7 2ka04
Kelompok 7 2ka04Kelompok 7 2ka04
Kelompok 7 2ka04Nugroho W
 
Pengantar Organisasi Dan Arsitektur Komputer
Pengantar Organisasi Dan Arsitektur KomputerPengantar Organisasi Dan Arsitektur Komputer
Pengantar Organisasi Dan Arsitektur Komputeraldylidyansyah
 
Pert.5 set instruksi arm,motorolla dan intel
Pert.5 set instruksi arm,motorolla dan intelPert.5 set instruksi arm,motorolla dan intel
Pert.5 set instruksi arm,motorolla dan intelIcal Militanmannojack
 
Mp 4 mode-pengalamatan
Mp 4 mode-pengalamatanMp 4 mode-pengalamatan
Mp 4 mode-pengalamatanOlbers Letfaar
 
Mp 4 mode-pengalamatan
Mp 4 mode-pengalamatanMp 4 mode-pengalamatan
Mp 4 mode-pengalamatanOlbers Letfaar
 

Similar to modul-e4160-unit-3-set-suruhan-mikropemproses-pengawalmikro-dan-membina-aturcara (13)

Bab2
Bab2Bab2
Bab2
 
Pertemuan 9.1 pengalamatan juga
Pertemuan 9.1 pengalamatan jugaPertemuan 9.1 pengalamatan juga
Pertemuan 9.1 pengalamatan juga
 
Pertemuan 9 pengalamatan
Pertemuan 9 pengalamatanPertemuan 9 pengalamatan
Pertemuan 9 pengalamatan
 
2ka04 Kelompok 7
2ka04 Kelompok 72ka04 Kelompok 7
2ka04 Kelompok 7
 
Kelompok 7 2ka04
Kelompok 7 2ka04Kelompok 7 2ka04
Kelompok 7 2ka04
 
Bab2 libre
Bab2 libreBab2 libre
Bab2 libre
 
Bab2 libre
Bab2 libreBab2 libre
Bab2 libre
 
Set intruksi ppt
Set intruksi pptSet intruksi ppt
Set intruksi ppt
 
K 5-arsitektur-komputer
K 5-arsitektur-komputerK 5-arsitektur-komputer
K 5-arsitektur-komputer
 
Pengantar Organisasi Dan Arsitektur Komputer
Pengantar Organisasi Dan Arsitektur KomputerPengantar Organisasi Dan Arsitektur Komputer
Pengantar Organisasi Dan Arsitektur Komputer
 
Pert.5 set instruksi arm,motorolla dan intel
Pert.5 set instruksi arm,motorolla dan intelPert.5 set instruksi arm,motorolla dan intel
Pert.5 set instruksi arm,motorolla dan intel
 
Mp 4 mode-pengalamatan
Mp 4 mode-pengalamatanMp 4 mode-pengalamatan
Mp 4 mode-pengalamatan
 
Mp 4 mode-pengalamatan
Mp 4 mode-pengalamatanMp 4 mode-pengalamatan
Mp 4 mode-pengalamatan
 

modul-e4160-unit-3-set-suruhan-mikropemproses-pengawalmikro-dan-membina-aturcara

  • 1. BAB 4.0 : SET SURUHAN MIKROPEMPROSES/PENGAWALMIKRO DAN MEMBINA ATURCARA 4.1 Mod/Ragam Pengalamatan - Mod alamat ialah pelbagai kaedah mendapatkan data yang terletak dalam daftar atau dalam ingatan. Untuk setiap kendalian, mod alamat memberitahu pemproses bagaimana ia perlu mencari atau mengira alamat kendalian sebenar. Alamat sebenar dinamai alamat berkesan dan dijana semasa pelaksanaan suruhan. - Dengan adanya ragam pengalamatan ini, pengaturcara dapat mempelbagaikan corak penulisan program supaya pelaksanaannya adalah cepat, memudahkan operasi dan menjimatkan penggunaan ruang ingatan. - Pemproses 68000 mempunyai 14 mod alamat kesemuanya yang boleh dikumpulkan kepada enam mod asas : Ragam Pengalamatan Contoh Suruhan Penerangan 1. Mod Tersirat RTS Terdiri daripada opkod sahaja 2. Mod Terdekat (Immediate) MOVE.B #$40,D0 Data diketahui. Contoh pertama menyatakan nilai MOVE.W #40,D5 $40 adalah data dalam heksadesimal yang akan MOVE.L #$30,D7 dipindahkan ke D0. Contoh kedua pula menyatakan nilai 40 adalah data dalam nombor desimal yang akan dipindahkan ke D5. 3. Mod Mutlak (absolute) MOVE.B $7000,D3 Menggunakan alamat sebenar bagi source atau MOVE.L D4,$1234 destinasi 4. - Mod Daftar Data MOVE.L D0,D7 Data Register merupakan operand Langsung (data register direct) - Mod Daftar Alamat MOVE.L A3,A1 Address register merupakan operand Langsung MOVE.L A4,D5 (address register direct) 5. Mod Daftar Alamat Tak MOVE.L D2,(A0) Address register memegang alamat bagi lokasi Langsung MOVE.W (A3),D7 memori yang mengandungi operand data. (address register indirect) Contoh pertama menyatakan bahawa kandungan data di alamat yang terdapat di A0 akan diubah dengan data yang terdapat di D2 6. Mod Relatif - Mod Pascatokok MOVE.W -(A6),D0 Alamat A6 akan ditolak 1,2 atau 4 bergantung kepada saiz data (B, W atau L). Data di A6 baru akan dipindahkan ke D0 - Mod Prasusut MOVE.W (A6)+,D0 Cara pemindahan data ini sama dengan Address Register Indirect kecuali address register tersebut akan ditambah selepas data dipindahkan. Saiz penambahan 1,2 atau 4 bergantung kepada saiz data (B, W atau L) Jadual 4.1 : Mod Ragam Pengalamatan 1
  • 2. 4.1.1 Mod Tersirat - Sesetengah suruhan 68000 tidak memerlukan sebarang kendalian dan ada pula suruhan yang merujuk daftar tanpa menyebut daftar yang digunakan. - Contoh, RTS menyebabkan kawalan dikembalikan dari subrutin ke aturcara pemanggil menggunakan daftar SP. 4.1.2 Mod Terdekat (immediate) - Dalam pengalamatan terdekat sesuatu suruhan mengandungi kod operasi dan kendalian. Kendalian ini boleh digunakan serta-merta (kedudukan terdekat) dan tiada capaian lain ke ingatan diperlukan. Ia berguna untuk memuat atau mengubah daftar-daftar CPU dengan pantas. Contohnya MOVE.B #’m’, D0 - Menyalin nilai ASCII untuk ‘m’ ke dalam daftar D0. Simbol ‘#’ difahami oleh penghimpun untuk menandakan pengalamatan terdekat. Contoh lain : MOVE.B #$40,D0 MOVE.W #$40,D5 MOVE.W #$30,D7 - Data diketahui. Contoh pertama, kedua dan ketiga menyatakan data dalam nilai nombor hex dipindahkan ke D0, D5 dan D7. 4.1.3 Mod Mutlak (absolute) - Dalam mod pengalamatan mutlak alamat atau lokasi kendalian dinyatakan secara langsung sebagai sebahagian daripada suruhan. Oleh itu, tiada sebarang pengiraan diperlukan bagi mendapatkan alamat berkesan. Dalam pengalamatan mutlak, kendalian terletak di dalam suatu lokasi ingatan. Contoh 1 : CLR.W $2000 ; memadam kata yang terletak di alamat 2000 Contoh 2 : MOVE.W $2000,D2 ; bermakna salin 16 bit dari lokasi 2000 ke D2 Contoh lain : MOVE.B $7000,D3 MOVE.L D4,$1234 ; Bermakna menggunakan alamat sebenar bagi source atau destinasi 4.1.4 Mod Pengalamatan Daftar Langsung (direct) - Dalam mod pengalamatan daftar langsung, alamat atau lokasi kendalian dinyatakan secara langsung sebagai sebahagian daripada suruhan. Alamat ini dibaca oleh CPU semasa membaca suruhan dan boleh terus digunakan. Oleh itu, tiada sebarang pengiraan diperlukan bagi mendapatkan alamat berkesan. Dalam pengalamatan daftar langsung, kendalian terletak di dalam suatu daftar data atau alamat. - Kebaikan menggunakan pengalamatan daftar : 2
  • 3. (i) medan alamat yang kecil sahaja diperlukan (ii) tidak perlu merujuk ke ingatan - Oleh sebab-sebab di atas, masa capaian data adalah pantas. Keburukan bilangan daftar yang terdapat dalam sistem selalunya terhad. - Terbahagi kepada dua : (i) Mod Daftar Data Langsung (ii) Mod Daftar Alamat Langsung Contoh 1 : CLR.W D1 ; memadam kata rendah dalam dafatr D1. Contoh 2 : MOVE.B D0, D1 ; salin D0 ke D1 (suruhan MOVE memerlukan dua kendalian dengan format 4.1.5 Mod Pengalamatan Tak Langsung (indirect) - Pengalamatan tak langsung (indirect addressing) ialah satu kaedah pencapaian data yang kompleks. Ragam ini boleh dibahagikan kepada dua jenis: daftar tak langsung dan ingatan tak langsung. - Dalam ragam pengalamatan ingatan tak langsung (indirect memory addressing) suruhan mengandungi satu alamat tak langsung yang menunjuk ke satu alamat ingatan yang mengandungi alamat berkesan bagi kendalian. - Dalam suruhan pengalamatan daftar tak langsung (indirect register addressing) opkod memilih daftar dalaman yang mengandungi alamat berkesan yang digunakan. Suatu daftar alamat digunakan sebagai punca alamat suatu kendalian dalam ingatan. Isi daftar alamat dianggap penuding ke lokasi tersebut. Mod ini dikenali dengan tanda kurungan yang mengelilingi nama satu daftar alamat. - Terdiri daripada Mod Daftar Alamat Tak Langsung sahaja (daftar data tiada) - Format cara penulisannya : CLR.B (A0) ; isi daftar A0 ialah alamat bagi lokasi ingatan yang dipadam. Contoh 1 : MOVE.L D2, (A0) ; A0 memegang alamat bagi lokasi memori yang mengandungi kendalian/operand data. Kandungan data di alamat yang terdapat di A0 akan diubah dengan data yang terdapat di D2. 4.1.6 Mod Relatif - Dalam pengalamatan relative alamat berkesan didapati dengan mencampur satu nombor (dipanggil offset) ke atas nilai pembilang aturcara terkini.Nilai offset menuruti opkod dalam suruhan. Ragam ini kerap digunakan bagi melakukan operasi cabang jarak dekat bagi gelung- gelung pendek - Terdiri daripada mod pascatokok dan mod prasusut 3
  • 4. Contoh 1 : ADD.W (A6)+,D4 ; mod pascatokok ; kandungan A6 digunakan sebagai penunjuk lokasi data di memori. Data di lokasi memori tersebut ditambahkan ke data di dalam D4. Kemudian, berlaku penambahan sebanyak 2 terhadap kandungan A6. Hasil operasi disimpan di D4. Contoh 2 : ADD.W -(A6),D4 ; mod prasusut ; penambahan sebanyak 2 terhadap kandungan A6. Kandungan baru A6 digunakan sebagai penunjuk lokasi data di memori. Data di lokasi memori tersebut ditambahkan ke data di dalam D4. Hasil operasi disimpan di D4. 4.2 Konsep membina aturcara - Membina aturcara bermakna menyelesaikan sesuatu masalah. Maka terdapat beberapa langkah yang perlu di dalam proses membina aturcara : (i) Definisi Masalah - Seseorang pengaturcaraan mesti mengetahui/menentukan perkara-perkara yang hendak di selesaikan sebelum menulis program. Contoh : Masukkan data bagi dua nombor. Kedua nombor tersebut di campurkan dan di simpan di memori. (ii) Rekabentuk Logikal - Permasalahan yang hendak di selesaikan ditukar ke bentuk gambarajah proses (flow chart). Start terminal Input/Output Operation/Process Logical selection Sub-routine Connector Connecting arrows End terminal 4
  • 5. (iii) Pengaturcaraan - Berdasarkan gambarajah proses, aturcara boleh mula dibina. - Contoh : ORG $7000 MOVE.B #12,D0 MOVE.B #34,D1 ADD.B D0,D1 MOVE.B D1,$7050 END (iv) Dokumentasi aturcara - Contoh : ORG $7000 ; program bermula di alamat $7000 MOVE.B #12,D0 ; data desimal 12 disimpan di D0 MOVE.B #34,D1 ; data desimal 34 disimpan di D1 ADD.B D0,D1 ; D0 + D1 D1 MOVE.B D1,$7050 ; kandungan byte D1 disimpan di alamat $7050 END ; program ditamatkan (v) Analisis aturcara 5