Assembly
TUJUAN
Tujuannya antara lain sebagai berikut:
•Mengenal skema program konversi bilangan decimal ke octal dengan ASSAMBLY
•Mengenal komponen-komponen apa saja yang ada di assembly
•Membuat program sederhana
Tujuannya antara lain sebagai berikut:
•Mengenal skema program konversi bilangan decimal ke octal dengan ASSAMBLY
•Mengenal komponen-komponen apa saja yang ada di assembly
•Membuat program sederhana
Elemen Kompetensi
Deskripsi: Membuat program konversi bilangan decimal ke
octal dengan bahasa assembly
Kompetensi Dasar : Dapat membuat program konversi bilangan decimal
ke octal dengan bahasa assembly dan TASM
Langkah-langkah
:
Ketik source code di
notepad
Source code konversi bilangan decimal ke oktal
prnstr macro msg
mov ah, 09h
lea dx, msg
int 21h
endm
data segment
buf1 db "Masukkan Angka Decimal:
$"
buf2 db 0ah,"Bukan Angka
Decimal...$"
buf3 db 0ah,"Konversi decimal ke
oktal:$"
buf4 db 6
db 0
db 6 dup(0)
multiplier db 0ah
data ends
code segment
assume cs:code,ds:data
start:
mov ax,data
mov ds,ax
mov es,ax
prnstr buf1
mov ah, 0ah
lea dx,buf4
int 21h
mov si,offset buf4+2
mov cl,byte ptr [si-1]
mov ch, 00h
subtract:
mov al,byte ptr [si]
cmp al, 30h
jnb cont1
prnstr buf2
jmp stop
cont1 :
cmp al, 3ah
jb cont2
prnstr buf2
jmp stop
cont2 :
sub al, 30h
mov byte ptr [si], al
inc si
loop subtract
mov si, offset buf4+2
mov cl, byte ptr [si-1]
mov ch, 00h
mov ax, 000h
calc :
mul multiplier
mov bl, byte ptr [si]
mov bh, 00h
add ax, bx
inc si
loop calc
mov si, offset buf4+2
mov bx, ax
mov dx, 0000h
mov ax, 8000h
convert :
mov cx, 0000h
conv :
cmp bx, ax
jb cont3
sub bx, ax
inc cx
jmp conv
cont3 :
add cl,30h
mov byte ptr [si], cl
inc si
mov cx, 0008h
div cx
cmp ax, 0000h
jnz convert
mov byte ptr [si],'$'
prnstr buf3
prnstr buf4+2
stop :
mov ax, 4c00h
int 21h
code ends
end start
source code konversi bilangan decimal ke biner
prnstr macro msg
mov ah, 09h
lea dx, msg
int 21h
endm
data segment
buf1 db "Masukkan Angka Decimal:
$"
buf2 db 0ah,"Bukan Angka
Decimal...$"
buf3 db 0ah,"Konversi decimal ke
biner:$"
buf4 db 6
db 0
db 6 dup(0)
multiplier db 0ah
data ends
code segment
assume cs:code,ds:data
start:
mov
ax,data
mov ds,ax
mov es,ax
prnstr buf1
mov ah, 0ah
lea dx,buf4
int 21h
mov si,offset buf4+2
mov cl,byte ptr [si-1]
mov ch, 00h
subtract:
mov al,byte ptr [si]
cmp al, 30h
jnb cont1
prnstr buf2
jmp stop
cont1 :
cmp al, 3ah
jb cont2
prnstr buf2
jmp stop
cont2 :
sub al, 30h
mov byte ptr [si], al
inc si
loop subtract
mov si, offset buf4+2
mov cl, byte ptr [si-1]
mov ch, 00h
mov
ax, 000h
calc :
mul multiplier
mov bl, byte ptr [si]
mov bh, 00h
add ax, bx
inc si
loop calc
mov si, offset buf4+2
mov bx, ax
mov dx, 0000h
mov ax, 8000h
convert :
mov cx, 0000h
conv :
cmp bx, ax
jb cont3
sub bx, ax
inc cx
jmp conv
cont3 :
add cl,30h
mov byte ptr [si], cl
inc si
mov cx, 0002h
div cx
cmp ax, 0000h
jnz convert
mov byte ptr [si],'$'
prnstr buf3
prnstr buf4+2
stop :
mov ax, 4c00h
int 21h
code ends
end start
Kemudian Save As dengan Format ASM
Buka command prompt lalu ketik CD
C:\TASM\BIN.Tekan enter
Ketik TASM PROYEK\CONVERT.ASM lalu enter
Sesudah itu ketik TLINK CONVERT.OBJ lalu tekan
enter
Ketik CONVERT.EXE,lalu enter.Masukan nilai
decimal yang akan dikonversi ke octal lalu tekan enter
Ketik CONVERT.EXE,lalu enter.Masukan nilai
decimal yang akan dikonversi ke biner lalu tekan enter
TEORI SINGKAT
Sekilas Bahasa Assembly
Bahasa Assembly adalah bahasa yang memudahkan
pemahaman bagian computer yang paling rendah, mendekati mesin. Bahasa assembly
sebaiknya dipelajari secara kontektual sehingga interaksi perangkat keras dan
perangkat lunak computer mungkin lebih mudah dipahami.
Bahasa assembly adalah bahasa pemrograman dengan
korespondensi satu-satu antara perintah-perintah/pertanyaannya dan bahasa mesin
computer. Bahasa assembly tidak satu jenis sebagaimana CPU computer yang
bermacam-macam. Setiap bahasa assembly secara langsung dipengaruhi oleh set
intruksi mesin computer dan arsitektur perangkat keras.
Misalnya, bahasa assembly IBM-PC adalah bahasa assembly yang mengacu
pada instruksi-instruksi yang dikenali oleh keluarga mikroprosesor intel
8086-80486.
Apa itu assembler?
Assembler adalah program yang mengonversi kode program sumber ke dalam
bahasa mesin
Terdapat dua assembler yang dikenal baik untuk IBM-PC , yaitu MASM
(Microsoft Assembler) dan TASM (Turbo Assembler).
Bahasa assembly disebut bahasa level-bawah karena
dalam struktur dan fungsi dekat dengan bahasa mesin. Sebaliknya, bahasa tingkat
tinggi seperti Pascal, Basic, Fortran, dan Cobol mempunyai perintah-perintah
yang andal yang diterjemahkan ke dalam berbagai instruksi mesin oleh compiler.
LAB SETUP
-PC
Tabel Checlist
No
|
Elemen Kompetensi
|
checlist
|
1.
|
Membuat program konversi bilangan decimal ke
bilangan octal dengan bahasa assembly
|
ü
|
Kesimpulan.
Disini akan dijelaskan bagaimana
perangkat keras computer dan sistem operasi bekerja sama dan bagaimana program
aplikasi berkomunikasi dengan system operasi. Untuk memahami keseluruhan
computer dan system informasinya, seseorang perlu memahami perangkat lunak pada
berbagai level. Level pertama adalah program aplikasi. Dalam level ini program
berinteraksi dengan DOS. Pada level bahasa tingkat tinggi, perintah /pernyataan
yang andal diuraikan ke dalam instruksi- instruksi mesin. Pada level yang lebih
rendah (lebih dekat dengan mesin), seseorang akan berinteraksi pada instruksi-
instruksi yang dikenali oleh CPU, sebagaimana program berkomunikasi dengan DOS.
Bahasa Assembly adalah bahasa yang memudahkan
pemahaman bagian computer yang paling rendah, mendekati mesin. Bahasa assembly
sebaiknya dipelajari secara kontektual sehingga interaksi perangkat keras dan
perangkat lunak computer mungkin lebih mudah dipahami.
Bahasa assembly adalah bahasa pemrograman dengan
korespondensi satu-satu antara perintah-perintah/pertanyaannya dan bahasa mesin
computer.
Tidak ada komentar:
Posting Komentar