Breaking News
Showing posts with label Praktikum 12. Show all posts
Showing posts with label Praktikum 12. Show all posts

Wednesday, 10 December 2014

PRAKTIKUM XVIII

Menampilkan karakter dan atribut dengan menuliskannya langsung pada memory layar.

Berikut ini adalah praktikum untuk menampilkan sebuar karakter pada kolom 40 baris 12 dengan attribute 95.

Tulis_Kar MACRO X,Y,Kar,Attr

MOV AX,0B800h

MOV ES,AX ; ES Menuju pada segment layar

MOV AH,Y

MOV AL,160

MUL AH ;hitung offset baris

MOV BX,AX ;simpan hasilnya pada BX

MOV AH,X

MOV AL,2

MUL AH ;hitung offset kolom

ADD BX,AX ;tambahkan hasilnya pada BX

MOV AL,Kar ;AL=karakter yang akan ditampilkan

MOV AH,Attr ;AH=atribut yang akan ditampilkan

MOV ES: [BX],AL ;tampilkan karakter yang akan di tampilkan

MOV ES: [BX +1],AH ;pada posisi kolom X dan Baris Y

ENDM

.model small

.code

org 100h

Proses:

Tulis_Kar 40 12 '1' 95 ;tulis karakter '1' dengan no atribut 95 pada posisi 40

Tulis_Kar 41 12 '2' 95 ;tulis karakter '1' dengan no atribut 95 pada posisi 41

Tulis_Kar 42 12 '4' 95 ;tulis karakter '1' dengan no atribut 95 pada posisi 42

Tulis_Kar 43 12 '2' 95 ;tulis karakter '1' dengan no atribut 95 pada posisi 43

Tulis_Kar 44 12 '9' 95 ;tulis karakter '1' dengan no atribut 95 pada posisi 44

Tulis_Kar 45 12 '1' 95 ;tulis karakter '1' dengan no atribut 95 pada posisi 45

Tulis_Kar 46 12 '1' 95 ;tulis karakter '1' dengan no atribut 95 pada posisi 46

Tulis_Kar 47 12 '2' 95 ;tulis karakter '1' dengan no atribut 95 pada posisi 47

INT 20h ;kolom 40 dan baris 12

END Proses

Hasil setelah di RUN

Read more ...

Sunday, 23 November 2014

JAWABAN ASSEMBLER

1.
  • Register adalah sebagian kecil memori komputer yang dipakai untuk tempat penampungan data dengan ketentuan bahwa data yang terdapat dalam register dapat diproses dalam berbagai operasi dengan melihat berapa besar kemampuan menampung register tersebut.
  • Memory merupakan bagian dari komputer yang digunakan sebagai tempat kerja.
  • Interrupt adalah suatu permintaan khusus kepada mikroposesor untuk melakukan sesuatu.
  • General purpose AH dan AL (Berasal dari Accumulator register AX)

    BH dan BL (Berasal dari base address register BX)

    CH dan CL (berasal dari count register CX)

    DH dan DL (berasal dari data register DX)

2.Arsitektur Komputer

Penjelasan tiap-tiap bagian

 System bus

 (warna kuning) menghubungkan dengan bermacam-macam komponen komputer.

 CPU merupakan pusat dari computer, hampir seluruh perhitungan dilakukan didalam CPU.

 RAM merupakan tempat dimana program diloading untuk dieksekusi

3.Yang dimaksud dengan

  • OpCode adalah Masing-masing instruksi memiliki kode numerik yang unik.

  • Bahasa Assembly adalah bahasa yang dapat dibaca & dimengerti oleh manusia sebagai hasil representasi binary code yang dieksekusi oleh komputer dan berorientasi pada mesin sering disebut dengan istilah mnemonic

  • Bahasa Mesin adalah bahasa yang dinyatakan dalam bilangan numeric (Binari) yang tersimpan sebagai byte dimemori di dalam computer.

  • kenapa harus mempelajari Bahasa Assembly?

  • Assembly memungkinkan akses langsung ke fasilitas system hardware yang mungkin tidak dapat dilakukan dengan menggunakan bahasa tingkat tinggi

  • Program yang dibuat dengan assembly akan lebih cepat dan lebih kecil dibandingkan dengan kode yang dihasilkan dengan menggunakan compiler.

  • Dengan mengerti bahasa Assembly siapa pun dapat melakukan proses disassembly untuk menganalisa program tertentu.
4.Konversikan bilangan ke binary

a.125 = 1111101 b

b.47 h = 0100 0111 b

c.33 o = 011 011 b

d.0AAA h = 0000 1010 1010 1010 b

e.68 = 1000100 b

5.Output program = P Q R S T U V

.model small

.code

org 100h

proses:

mov ah,02h

mov dl,'P'

mov cx,7h

ulang:

int 21h

inc dl

loop ulang

int 20h

end proses

II.Uraikan dengan jelas !

Jelaskan script program dan hasil Output dibawah ini:

.Model Small ; Data dan code yang digunakan oleh program kurang dari 1 segment atau 64 KB.

.Code ; Digunakan untuk menyimpan program

Org 100h ; Menyediakan memory kosong 100h byte

Text: JMP Mulai ; Lompat ke mulai

Tulis DB ‘STMIK CIKARANG TEKNIK INFORMATIKA’ ; 33 KARAKTER (define byte)

Mulai: ;Proses mulai

XOR BX,BX ; BX=0

MOV CX,33 ; 33 kali proses ulang yang dilakukan untuk menampilkan karakter

Ulang: ;Proses ulang

MOV DL, Tulis [BX] ; Ambil karakter yang ke BX

MOV AH,02 ; Servis cetak karakter

INT 21h ; Perintah mencetak karakter

INC BX ; Nilai BX di tambah 1

LOOP Ulang ; Kembali ke ulang

INT 20h ; Selesai kembali ke DOS

END Text

Read more ...

SOAL ASSEMBLER

1.Apa yang dimaksud dengan register, memory, interrupt dan sebutkan 8 general purpose register!

2.Gambarkan arsitektur computer dan jelaskan tiap-tiap bagiannya!

3.Apa yang dimaksud OpCode, Bahasa Assembly, Bahasa Mesin, beri alasan kenapa kita mempelajari Bahasa Assembly?

4.Konversikan bilangan tersebut ke binary:

a.125

b.47h

c.33o

d.0AAAh

e.68

5.Buatlah sebuah program untuk menampilkan : P Q R S T U V

II.Uraikan dengan jelas !

Jelaskan script program dan hasil Output dibawah ini:

Read more ...

Thursday, 16 October 2014

BELAJAR ASSEMBLER

MODUL PRAKTIKUM ASSEMBLER

I. Emulator EMU8086

EMU8086 merupakan emulator untuk prosesor 8086 yang sudah dilengkapi dengan editor dan assembler yang bersifat GUI (graphical user interface). Dengan EMU8086 internal register dapat diamati dari waktu ke waktu akibat dari eksekusi suatu instruksi assembly.

Tampilan Awal Emu8086

Selain menggunakan Empty workspace kita perlu mengetahui pembuatan program menggunakan COM dan EXE. Berikut ini merupakan perbedaannya:

PROGRAM COM :

  • Lebih pendek dari file EXE
  • Lebih cepat dibanding file EXE
  • Hanya dapat menggunakan 1 segmen
  • Ukuran file maksimum 64 KB (ukuran satu segment)
  • sulit untuk mengakses data atau procedure yang terletak pada segment yang lain.
  • 100h byte pertama merupakan PSP(Program Segment Prefix) dari program tersebut.
  • Bisa dibuat dengan DEBUG

PROGRAM EXE :

  • Lebih panjang dari file COM
  • Lebih lambat dibanding file COM
  • Bisa menggunakan lebih dari 1 segmen
  • Ukuran file tak terbatas sesuai dengan ukuran memory.
  • mudah mengakses data atau procedure pada segment yang lain.
  • Tidak bisa dibuat dengan DEBUG

II. Awal penulisan program

Setelah membuka aplikasi EMU8086 dan memilih empty workspace, maka kita akan menuliskan coding yang akan kita simulasikan dan untuk mengetahui output dari coding yang kita buat. Dalam penulisan coding ada beberapa aturan yang harus kita ikuti dan untuk mendapatkan hasil yang maksimal, Seperti gambar berikut:

PRAKTIKUM ASSEMBLER

Dalam penulisan program bagian atas merupakan bagian untuk melakukan bagian identifikasi dan setting ( diluar tanda ; dan tulisan karakter berwarna hijau  karena karakter warna hijau merupakan tanda informasi program maupun informasi tiap-tiap instruksi). Berikut ini penjelasan untuk memulai penulisan coding.

.MODEL SMALL

.CODE

ORG 100H

Pada .MODEL SMALL ini merupakan tanda directive untuk memberi tahu kepada assembler bentuk memory yang kita gunakan dalam program yang kita buat. Adapun macam-macam model sebagai berikut:

a. TINY

Program hanya menggunakan 1 segment.

b. SMALL

Data dan code yang digunakan oleh program kurang dari 1 segment atau 64 KB.

c. MEDIUM

Data yang digunakan kurang dari 64 KB tetapi code yang digunakan lebih dari 64 KB.

d. COMPACT

Data yang digunakan lebih dari 64 KB tetapi code yang digunakan kurang dari 64 KB.

e. LARGE

Data dan Code yang digunakan lebih dari 64 KB.

f. HUGE

Data dan Code maupun Array yang digunakan lebih dari 64 KB.

Sedangkan untuk

.CODEmerupakan directive untuk memberitahu ke Assembler bahwa kita menggunakan code segmentnya disini, code segment digunakan untuk menyimpan program yang nantinya akan dijalankan. Sedangkan ORG 100h perintah ini akan selalu digunakan untuk memberitahukan assembler supaya program pada saat dijalankan ditaruh pada offset 100h (255) byte atau dengan kata lain kita menyediakan memory kosong 100h byte pada saat program dijalankan.

PRAKTIKUM ASSEMBLER

I. Praktikum I

Mencetak Huruf menggunakan INT10.

Buatlah coding seperti berikut.

Setelah selesai simpan file dengan ekstensi *.asm dan selanjutnya klik menu emulator dan akan muncul tampilan seperti berikut:

Setelah itu ada 2 windows baru yang menunjukkan informasi source code dan menu emulator. Kemudian klik Run untuk menjalankan emulator sehingga muncul command DOS yang akan menampilkan hasil code yang kita buat. Berikut tampilan setelah melakukan klik Run.

II. Praktikum II

Mencetak karakter A ~ P dengan INT 21h pada service 02

Tuliskan coding dibawah berikut kedalam Emu8086

Analisa hasilnya dan pelajari logika perulangannya. Selanjutnya buatlah program yang akan menampilkan A ~ Z dan kebalikannya Z ~ A

(Praktikum V)

III. Praktikum III

Operasi penambahan dengan hasil akhir sebagai berikut untuk masing-masing nilai AX = ACF2h ,BX = 9ABCh ,CX = 3568h ,DX = DEF0h

Hasil dari program adalah sebagai berikut:

Untuk mendapatkan nilai hasil penambahan, setelah klik run makan kita klik debug untuk mengetahui nilainya.

IV. Praktikum IV

Pengurangan 122EFFF - 0FEFFFF Hasil adalah 0023ff00

Warna kuning merupakan hasil High dan warna hijau adalah hasil Low

Hasil emulator sebagai berikut:

Output yang akan ditampilkan adalah nilai AX

V. Praktikum V

Pada praktikum ke V ini merupakan pengembangan yang sudah ada pada praktikum ke II, akan tetapi pada praktikum ini kita akan mencoba untuk menampilkan karakter dengan sedikit berbeda. Silahkan ketikkan code berikut ini:
Read more ...
Designed By