Assembly


Beberapa hasil latihan mata kuliah Assembly yang bisa saya share dengan teman-teman semuanya, bagi teman-teman yang punya yang lain tolong juga dishare disini, terima kasih

Mata kuliah                        : Bahasa Assembly II

Topik                                     : Pemograman Input Ouput

Judul                                     : Pemograman Mikroposesor untuk Tampilan Layar Monitor

Jobsheet                             : 01

  1. A.   Tujuan
    1. Agar mahasiswa dapat membuat program untuk menampilkan sebuah karakter di layar monitor menggunakan INT 21H service 2 dan nilai ASCII ditempatkan pada register DL.
    2. Agara mahasaiswa dapat membuat program untuk menampilkan sebuah kalimat di layar monitor menggunakan INT 21H service 2 dan nilai ASCII ditempatkan pada register  DL.
    3. Agar mahasiswa dapat membuat program untuk menampilkan sebuah karakter di layar monitor menggunakan INT 21H service 9 dengan kalimat yang akan ditampilkan ditulis pada kalimat lain.
    4. Agar mahasiswa dapat membuat program untuk menampilkan kalimat bergerak sepanjang layar menggunakan INT 10 service 2 untuk mengatur posisi kursor.
    5. Agar mahasiswa dapat membuat program untuk membersihkan layar monitor agar tampilan kalimat bersih dengan menggunakan INT 10 service 0 dengan format layar 3 (Al=3).
  1. B.   Teori Pendukung

Mikroposesor dapat diprogram untuk menempilkan data ke layar monitor. Untuk urusan monitor vendor mikroposesor Intel telah menerbitkan interrupt sebagai berikut  :

  1. INT 5 adalah perintah PRINT SCREEN. Untuk mencetak apa yang ada di layar.
  2. INT 10 service 0H,adalah perintah format layar. Nilai 0H disimpan diregister AH sedang nilai yang ada pada registerALadalah nilai format layar.Ada15 nilai mulai dari 0 sampai F yang menyatakan format layar (Lihat detailnya pada kamus Interpurt)
  3. INT 10 service 01H adalah perintah untuk menentukan bentuk kursor.
  4. INT 10 service 02H adalah perintah untuk menentukan posisi kursor.
  5. INT 10 service 03H adalah perintah untuk mencari posisi kursor.
  6. INT 10 service 04H adalah perintah untuk mencari posisi light pen.
  7. INT 10 service 05H adalah perintah untuk memilih halamn yang aktif.
  8. INT 10 service 06H adalah perintah untuk menggulung layar ke atas.
  9. INT 10 service 07H adalah perintah untuk menggulung layar ke bawah.
  10. INT 10 service 08H adalah perintah untuk membaca data ASCII dan atribut karakter.
  11. INT 10 service 09H adalah perintah untuk mencetak karakter ASCII dan atribut ke layar.
  12. INT 10 service 0AH adalah perintah untukmencetak karakter ASCII tanpa atribut ke layar.
  13. INT 10 service 0BH adalah perintah untukmencetak warna background dan foreground layar.
  14. INT 10 service 0CH adalah perintah untuk mencetak pixel pada posisi kursor.
  15. INT 10 service 0DH adalah perintah untuk membaca angka pixel.
  16. INT 10 service 0EH adalah perintah untuk mencetak karakter TTY (tele type) mode.
  17. INT 10 service 0FH adalah perintah untuk membaca modus video.
  18. INT 21 service 02H adalah perintah untuk menulis satu karakter ke layar.
  19. INT 21 service 09H adalah perintah untuk menulis seuntai kalimat ke layar.

Untuk lebih jelasnya cara menggunakan INTn tersebut diatas dapat dilihat dalam kamus interrupt. Karakter yang dapat ditampilkan di layar adalah karakter yang sudah mempunyai kode ASCII ( American Standart Code for Interchage Information ) atau kode perluasannya.

  1. C.   Langkah Kerja
    1. Persiapkan Program
      1. Hidupkan Komputer.
      2. Pada tampilkan Dekstop, pilih ALL Programs
      3. Pilih RUN , ketik DEBUG lalu enter
      4. Lalu muncul program DEBUG.exe
      5. Sebelumnya buka tampilan NOTEPAD untuk membuat Listing program,yang akan di masukan dalam program DEBUG.exe .
  2. Program
    1. Rakit program berikut pada alamat offset 100 :

– A100

MOV AH,02

MOV DL,45

INT 21

INT 20

  1. Jika setelah selesai dirakit pastikan isi register IP sama dengan alamat offset ketika program ditulis ! (Sebagai cek 1)
  2. Eksekusi program pada prompt debug (tanda kurung ) dengan perintah G
  3. Maka akan didapatkan ( Hasil 1)
  4. Tambahkan tiga baris program berikut ke program tadi pada baris 1 sampai 3 sehingga program menjadi :

-A100

MOV AH, OO

MOVAL, 03

INT 10

MOV AH,02

MOV DL,45

INT 21

INT 20

  1. Jika setelah selesai dirakit pastikan isi register IP sama dengan alamat offset ketika program ditulis ! (Sebagai cek 2)
  2. Eksekusi program pada prompt debug (tanda kurung ) dengan perintah G
  3. Maka akan didapatkan ( Hasil 2)

Catatan : Fungsi program 3 baris pertama adalah :

  1. Tambah program lagi untuk karakter lebih banyak. Misal :

-A100

MOV AH, 00

MOVAL, 03

INT 10

MOV AH, 02

MOV DL, 45

INT 21

MOV AH, 02

MOV DL, 44

INT 21

MOV AH, 02

MOV DL, 49

INT 21

INT 20

  1. Jika setelah selesai dirakit pastikan isi register IP sama dengan alamat offset ketika program ditulis ! (Sebagai cek 3)
  2. Eksekusi program pada prompt debug (tanda kurung ) dengan perintah G
  3. Maka akan didapatkan ( Hasil 3) !
  4. Rancang dan rakit program untuk menampilkan angka 0 sampai 9 ! nilai ASCII dari 0=30 !
  5. Jika setelah selesai dirakit pastikan isi register IP sama dengan alamat offset ketika program ditulis ! (Sebagai cek 4)
  6. Eksekusi program pada prompt debug (tanda kurung ) dengan perintah G
  7. Maka akan didapatkan ( Hasil 4) !
  8. Rancang dan rakit program untuk menampilkan angka 9 sampai 0 ! nilai ASCII dari 9=39 !
  9. Jika setelah selesai dirakit pastikan isi register IP sama dengan alamat offset ketika program ditulis ! (Sebagai cek 5)
  10. Eksekusi program pada prompt debug (tanda kurung ) dengan perintah G
  11. Maka akan didapatkan ( Hasil 5) !
  1. D.   Listing Program Dan Hasilnya
  1. CEK 1
  2. LIST PROGRAM

A100

MOV AH,02

MOV DL,45

INT 21

INT 20

G

  1. HASIL PROGRAM
  1. CEK 2
  2. LIST PROGRAM

A100

MOV AH,00

MOV AL,03

INT 10

MOV AH,02

MOV DL,45

INT 21

INT 20

G

  1. HASIL PROGRAM
  1. CEK 3
  2. LIST PROGRAM

A100

MOV AH,00

MOV AL,03

INT 10

MOV AH,02

MOV DL,45

INT 21

MOV AH,02

MOV DL,44

INT 21

MOV AH,02

MOV DL,49

INT 21

INT 20

G

  1. HASIL PROGRAM
  1. CEK 4
  2. LIST PROGRAM

A100

MOV AH,00

MOV AL,03

INT 10

MOV AH,02

MOV DL,48

INT 21

MOV AH,02

MOV DL,45

INT 21

MOV AH,02

MOV DL,52

INT 21

MOV AH,02

MOV DL,49

INT 21

INT 20

G

  1. HASIL PROGRAM
  1. CEK 5
  2. LIST PROGRAM

A100

MOV AH,00

MOV AL,03

INT 10

MOV AH,02

MOV DL,48

INT 21

MOV AH,02

MOV DL,45

INT 21

MOV AH,02

MOV DL,52

INT 21

MOV AH,02

MOV DL,49

INT 21

MOV AH,02

MOV DL,20

INT 21

MOV AH,02

MOV DL,4B

INT 21

MOV AH,02

MOV DL,55

INT 21

MOV AH,02

MOV DL,53

INT 21

MOV AH,02

MOV DL,57

INT 21

MOV AH,02

MOV DL,41

INT 21

MOV AH,02

MOV DL,4E

INT 21

MOV AH,02

MOV DL,54

INT 21

MOV AH,02

MOV DL,4F

INT 21

INT 20

G

  1. HASIL PROGRAM SILAHKAN DICOBA SENDIRI

LIS PROGRAM

A100

MOV AH,00

MOV AL,03

INT 10

MOV AH,02

MOV DL,30

INT 21

MOV AH,02

MOV DL,31

INT 21

MOV AH,02

MOV DL,32

INT 21

MOV AH,02

MOV DL,33

INT 21

MOV AH,02

MOV DL,34

INT 21

MOV AH,02

MOV DL,35

INT 21

MOV AH,02

MOV DL,36

INT 21

MOV AH,02

MOV DL,37

INT 21

MOV AH,02

MOV DL,38

INT 21

MOV AH,02

MOV DL,39

INT 21

INT 20

G

HASIL PROGRAM SILAHKAN DICOBA SENDIRI

LIST PROGRAM

A100

MOV AH,00

MOV AL,03

INT 10

MOV AH,02

MOV DL,39

INT 21

MOV AH,02

MOV DL,38

INT 21

MOV AH,02

MOV DL,37

INT 21

MOV AH,02

MOV DL,36

INT 21

MOV AH,02

MOV DL,35

INT 21

MOV AH,02

MOV DL,34

INT 21

MOV AH,02

MOV DL,33

INT 21

MOV AH,02

MOV DL,32

INT 21

MOV AH,02

MOV DL,31

INT 21

MOV AH,02

MOV DL,30

INT 21

INT 20

G

HASIL PROGRAM SILAHKAN DICOBA SENDIRI

LIST PROGRAM

A100

MOV CX,A

MOV DL,30

MOV AH,02

INT 21

INC DL

LOOP 105

INT 20

G

HASIL PROGRAM SILAHKAN DICOBA SENDIRI

LIST PROGRAM

A100

MOV CX,0A

MOV DL,39

MOV AH,02

INT 21

DEC DL

LOOP 105

INT 20

G

HASIL PROGRAM SILAHKAN DICOBA SENDIRI

LIST PROGRAM

A100

MOV CX,1A

MOV DL,41

MOV AH,02

INT 21

INC DL

LOOP 105

INT 20

G

HASIL PROGRAM SILAHKAN DICOBA SENDIRI

LIST PROGRAM

A100

MOV CX,1A

MOV DL,61

MOV AH,02

INT 21

INC DL

LOOP 105

INT 20

G

HASIL PROGRAM SILAHKAN DICOBA SENDIRI

LIST PROGRAM

A100

MOV CX,1A

MOV DL,5A

MOV AH,02

INT 21

DEC DL

LOOP 105

INT 20

G

HASIL PROGRAM SILAHKAN DICOBA SENDIRI

LIST PROGRAM

A100

MOV CX,1A

MOV DL,7A

MOV AH,02

INT 21

DEC DL

LOOP 105

INT 20

G

HASIL PROGRAM SILAHKAN DICOBA SENDIRI

LIST PROGRAM

A300

DB “TERNYATA KULIAH DI AMIK ITU MENYENANGKAN”

A100

MOV AH,00

MOV AL,03

INT 10

MOV CX,0300

MOV AH,02

MOV BX,0300

MOV DL,[BX]

INT 21

INC BX

LOOP 010E

INT 20

G

HASIL PROGRAM SILAHKAN DICOBA SENDIRI

LIST PROGRAM

A300

DB “HERI KUSWANTO”

A100

MOV AH,00

MOV AL,03

INT 10

MOV AH,02

MOV DX,0920

INT 10

MOV CX,0030

MOV AH,02

MOV BX,0300

MOV DL,[BX]

INT 21

INC BX

LOOP 115

INT 20

G

HASIL PROGRAM SILAHKAN DICOBA SENDIRI

LIST PROGRAM

A300

DB ‘ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z’

A100

MOV CX,1A

MOV DL,41

MOV AH,02

INT 21

INC DL

LOOP 105

INT 20

G

HASIL PROGRAM SILAHKAN DICOBA SENDIRI

LIST PROGRAM

A300

DB ‘ z y x w v u t s r q p o n m l k j i h g f e d c b a’

A100

MOV CX,1A

MOV DL,7A

MOV AH,02

INT 21

DEC DL

LOOP 105

INT 20

G

HASIL PROGRAM SILAHKAN DICOBA SENDIRI

LIST PROGRAM

A300

DB ‘9 8 7 6 5’

A100

MOV AH,00

MOV AL,03

INT 10

MOV AH,02

MOV DX,0920

INT 10

MOV CX,0030

MOV AH,02

MOV BX,0300

MOV DL,[BX]

INT 21

INC BX

LOOP 0115

INT 20

G

HASIL PROGRAM SILAHKAN DICOBA SENDIRI

LIST PROGRAM

A300

DB ‘9 8 7 6 5′

A100

MOV AH,00

MOV AL,03

INT 10

MOV AH,02

MOV DX,0920

INT 10

MOV CX,0030

MOV AH,02

MOV BX,0300

MOV DL,[BX]

INT 21

INC BX

LOOP 0115

INT 20

A200

PUSH BP

PUSH CX

MOV BP,100

MOV CX,4000

LOOP 208

DEC BP

JNZ 205

POP CX

POP BP

RET

G

HASIL PROGRAM SILAHKAN DICOBA SENDIRI

LIST PROGRAM

A500

PUSH AX

PUSH DX

PUSH BX

PUSH CX

MOV DX,BP

MOV BH,00

MOV AH,02

INT 10

MOV CX,0011

MOV BX,0300

MOV DL,[BX]

MOV AH,02

INT 21

INC BX

LOOP 0512

CALL 0200

POP CX

POP BX

POP DX

POP AX

RET

A600

PUSH AX

PUSH DX

PUSH BX

PUSH CX

MOV DX,BP

MOV BH,00

MOV AH,02

INT 10

MOV CX,0011

MOV BX,0400

MOV DL,[BX]

MOV AH,02

INT 21

INC BX

LOOP 0612

POP CX

POP BX

POP DX

POP AX

RET

A200

PUSH BP

PUSH CX

MOV BP,500

MOV CX,4000

LOOP 208

DEC BP

JNZ 205

POP CX

POP BP

RET

A100

MOV AH,00

MOV AL,03

INT 10

MOV BP,0900

CALL 0500

CALL 0600

CALL 0500

CALL 0600

MOV AH,0B

INT 21

CMP AL,FF

JZ 0126

INC BP

CMP BP,0920

JNZ 0109

JMP 0106

INT 20

HASIL PROGRAM SILAHKAN DICOBA SENDIRI

LIST PROGRAM

A500

PUSH AX

PUSH DX

PUSH BX

PUSH CX

MOV DX,BP

MOV BH,00

MOV AH,02

INT 10

MOV CX,0011

MOV BX,0300

MOV DL,[BX]

MOV AH,02

INT 21

INC BX

LOOP 0512

CALL 0200

POP CX

POP BX

POP DX

POP AX

RET

A600

PUSH AX

PUSH DX

PUSH BX

PUSH CX

MOV DX,BP

MOV BH,00

MOV AH,02

INT 10

MOV CX,0011

MOV BX,0400

MOV DL,[BX]

MOV AH,02

INT 21

INC BX

LOOP 0612

POP CX

POP BX

POP DX

POP AX

RET

A200

PUSH BP

PUSH CX

MOV BP,500

MOV CX,4000

LOOP 208

DEC BP

JNZ 205

POP CX

POP BP

RET

A100

MOV AH,00

MOV AL,03

INT 10

MOV BP,0900

CALL 0500

CALL 0600

CALL 0500

CALL 0600

MOV AH,0B

INT 21

CMP AL,FF

JZ 0126

INC BP

CMP BP,0920

JNZ 0109

JMP 0106

INT 20

A400

DB”

A300

DB’HERI KUSWANTO’

HASIL PROGRAM SILAHKAN DICOBA SENDIRI

LIST PROGRAM

A500

PUSH AX

PUSH DX

PUSH BX

PUSH CX

MOV DX,BP

MOV BH,00

MOV AH,02

INT 10

MOV CX,007

MOV BX,0300

MOV DL,[BX]

MOV AH,02

INT 21

INC BX

LOOP 0512

CALL 0200

POP CX

POP BX

POP DX

POP AX

RET

A600

PUSH AX

PUSH DX

PUSH BX

PUSH CX

MOV DX,BP

MOV BH,00

MOV AH,02

INT 10

MOV CX,007

MOV BX,0400

MOV DL,[BX]

MOV AH,02

INT 21

INC BX

LOOP 0612

POP CX

POP BX

POP DX

POP AX

RET

A200

PUSH BP

PUSH CX

MOV BP,300

MOV CX,4000

LOOP 208

DEC BP

JNZ 205

POP CX

POP BP

RET

A100

MOV AH,00

MOV AL,03

INT 10

MOV BP,100A

CALL 0500

CALL 0600

CALL 0500

CALL 0600

MOV AH,0B

INT 21

CMP AL,FF

JZ 0126

ADD BP, -100

CMP BP,000A

JNZ 0109

JMP 0106

INT 20

A400

DB”

A300

DB’HERI’

HASIL PROGRAM SILAHKAN DICOBA SENDIRI

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s