Rabu, 02 Februari 2011

PROGRAM INPUTAN

NAMA: M Hasbi Sadam A
NIM : sir200922
BAHASA RAKITAN

.model small
.code
org 100h
data:
jmp mulai

asal db'widya utama$'

kata db'masukan huruf yang dicari :$'
ket1 db'huruf ditemukan$'
ket2 db'huruf tidak ditemukan$'

mulai:

xor bx,bx ; cek panjang kalimat

cek:

mov al,asal[bx]; pindahkan asal [index] ke al
inc bx
cmp al,'$'
jne cek

dec bx

mov cx,bx

xor bx,bx

mov ah,9
mov dx,offset asal
int 21h

mov ah,2

mov dl,13
int 21h
mov dl,10
int 21h

mov ah,9

mov dx,offset kata
int 21h
mov ah,1
int 21h

ulang:

mov dl, asal[bx]
inc bx
cmp dl,'$'
je salah
cmp al,dl
jne ulang
jmp benar
salah:
mov ah,2
mov dl,13
int 21h
mov dl,10
int 21h
mov ah,9
mov dx,offset ket2
int 21h
jmp barisbaru
benar:
mov ah,2
mov dl,13
int 21h
mov dl,10
int 21h
mov ah,9
mov dx,offset ket1
int 21h
jmp barisbaru
barisbaru:
mov ah,2
mov dl,13
int 21h
mov dl,10
int 21h
int 20h
end data

output :

»»  READMORE... : both;'/>
PROGRAM PENGURANGAN DENGAN 1 (DEC)

NAMA: M Hasbi Sadam A
NIM : sir200922
BAHASA RAKITAN

.model small

.code

org 100h

mulai:

mov ah,02h

mov dl,'D'

mov cx,4

ulang:

int 21h

DEC dl

loop ulang

int 20h

end mulai


output :
Program tersebut akan menghasilkan output yaitu DCBA

  • Mov cx,4 (program akan melakukan perulangan sebanyak 4x dengan nilai dari D terus berkurang satu)

  • dec dl (perintah untuk melakukan pengurangan terhadap nilai D)

  • Perintah DEC (Decrement) digunakan khusus untuk pengurangan dengan 1.

»»  READMORE... : both;'/>
PROGRAM MENCELAK A,C,E,G...Y

NAMA: M Hasbi Sadam A
NIM : sir200922
BAHASA RAKITAN

.model small

.code

org 100h

mulai:

mov ah,02h

mov dl,'A'

mov cx, 13

ulang:

int 21h

inc dl

inc dl

loop ulang

int 20h

end mulai

maka akan menghasilkan outputan: A,C,E,G,I,K,M,P,R,T,V,X,Y

Mov cx, 13 (Jumlah semua huruf abjad adalah 26, output yang kita inginkan adalah A,C..Y. nilai dari A ke C adalah selisih 2. Maka 26/2 hasilnya adalah 13 artinya kita hanya memerlukan perulangan sebanyak 13x)

»»  READMORE... : both;'/>

PROGRAM STACK

NAMA: M Hasbi Sadam A
NIM : sir200922
BAHASA RAKITAN

tuliskan source berikut ke notepad:

.model small

.code

org 100h

mulai:

mov ax,15

mov bx,80


add ax,bx

mov bx,10

xor cx,cx


ulang:

xor dx,dx

div bx

push dx

inc cx

cmp ax,0

jne ulang


cetak:

pop dx

add dl,'0'

call cetak_k

loop cetak


int 20h

cetak_k proc near

mov ah,02

int 21h

ret

cetak_k endp

end mulai

maka akan menghasilkan output: 95


»»  READMORE... : both;'/>