[Sistem Operasi] [Komunikasi Data] [Database] [Teknologi] [Programming] [Teknik Kompilasi] [Otomata]

Ads, Information or Related about Computer

Rumah Studio
The Real Management
Recording Sound Engineering
Equipped with :
Rode, Alesis,Fender,Yamaha
Shure, Sabian, Remo, Mackie
ECHO, PreSonus, Music Man
Phone : +62 819 602 8707
Medan

The Real Management
The Real Management
Andakah yang kami cari ?
Kirimkan foto close up anda ke :
Real Management Ruko Blok E1 Lantai 3
Jl. Lebak Bulus I No. 1 Cilandak Barat
Jakarta Selatan 12430
Phone : 021-22702102
info lebih detail hubungi
Phone : +628161898512, +622157936487

Kedai Jasmin
Perum Taman Sari Bukit Damai Blok B3 No 30 Jl Raya Parung - Serpong, Pedurenan, Gunung Sindur, Bogor
Call / SMS : +62817762181 (Mila)
Menyediakan dan menjual :
- Madu ASLI Hutan Sumatra
- HABATUSSAUDA
- MADU ARAB
- PIL SEDAP MALAM
- KRIM MINYAK ZAITUN
- BUKU-BUKU ISLAMI
- PAKAIAN, TAS dan SEPATU
- TERALIS, KANOPI, dsb
- SOUVENIR PERKAWINAN

Arie's Wedding Organizer
Perum Taman Narogong Indah Blok F 29 No 11 Bekasi
- Dekorasi Pelaminan
- Tata Rias dan Busana
- Foto dan Video Shooting
- Hiburan
- Compliment
Phone :
02183464447, 02199671075, 081319792428, 085659934444

Hipotesa

Jarak terdekat antara benda di bumi merupakan jarak terjauh antara kedua benda tersebut. Jarak terjauh dapat dilihat bila kedua benda tersebut diukur dari jarak berlawan sehingga harus mengelili bumi terlebih dahulu

Perputaran bumi (rotasi) memiliki kecepatan melebihi kecepatan pesawat terbang. Dapat dilihat dari contoh bila lama perjalanan pesawat dari Jakarta ke medan adalah 2 jam, bumi berputar cukup membutuhkan waktu sekitar 30 menit (perbedaan waktu magrib untuk Jakarta dan Medan). Berarti 4 kali kecepatan pesawat penerbangan

Semakin cepat jantung berdetak, semakin lama waktu berlalu. Manusia dengan detak jantung cepat akan terlihat melaksanakan sesuatu dengan cepat, sebaliknya orang yang berdetak lambat akan merasa dia baru melakukan sedikit untuk hari ini. Efek bagi manusia dengan detak jantung cepat adalah hipertensi tinggi

Pegumpalan darah di otak dapat dikurangi dengan mengkonsumsi nenas

Sumber segala Obat sebagian besar ada di tanah. lalu air, udara, dan panas matahari. Dari tanah yang sama di bantu dengan air, udara dan sinar matahari yang sama bisa hidup tumbuh-tumbuhan yang berbeda, termasuk tumbuh-tumbuhan yang sering menjadi penyembuh penyakit-penyakit tertentu

Tabel Mnemonic


Mnemonic ---- : AAA (ASCII Adjust For Addition)
Tersedia pada : 8088 ke atas
Syntax ------ : AAA
Pengaruh flag : AF, CF

Fungsi :
Mengatur format bilangan biner/hexa ke bentuk BCD setelah dilakukan operasi penjumlahan 2 bilangan BCD. AAA hanya dapat dilakukan untuk bilangan sebesar 4 bit, maksimal hexa F dan diletakkan di register AL. Bila AL bernilai lebih dari 9, maka AL akan dikurangi 10 dan 4 bit tinggi dari AL akan dijadikan 0. Setelah itu AH akan ditambah dengan 1. CF dan AF akan diset 1.

Contoh :
Bilangan BCD 8+6=...
MOV AL,8h
MOV AH,6h
ADD AL,AH ; AX = 060Eh
AAA ----->; AX = 0704

Bilangan 0E dijadikan BCD menjadi 14, dimana bilangan di AX dibaca BCD 14 -> AH = 1(7-6), AL = 4

Ket :

Pada MOV AL,8h -> register AL memiliki nilai = 8h
Pada MOV AH,6h -> register AH memiliki nilai = 6h
ADD AL,AH -> perubahan hanya terjadi pada register AL, yaitu menambahkan nilai AH ke AL sehingga AH tetap 06 dan AL memiliki nilai 0E
AX = (AH dan AL) = 060Eh

AX = 060E dimana AH = 06 dan AL = 0E
pada BCD berbentuk desimal maka AH = 06 (=0000 0110) dan AL = 14 (= 0000 1110)
Pada BCD (4 digit) nilai 14 adalah 0001 0100
Pada AAA hanya dapat menerima nilai 4 bit pertama paling kanan (dalam hal ini satuan), maka AL pada BCD bernilai 14 hanya bisa menerima nilai satuan 4
untuk itu nilai puluhan 1 pada AL ditambahkan ke AH.
Sehingga AH = 06 + 01 = 07 dan AL = 04
AX = (AH dan AL) = 0704

Dimana 060Eh pada AAA yang mengambil hanya 4 bit pertama dari kanan pada AH dan AL adalah 6Eh,
Pada BCD, 6Eh ke nilai desimal = 74 (yaitu 0704 pada AAA yang hanya pengambil 4 bit pertama dari kanan)

----------------------------------------------------------------------

Mnemonic ---- : AAD (ASCII Adjust For Division)
Tersedia pada : 8088 ke atas
Syntax ------ : AAD
Pengaruh flag : SF, ZF, PF

Fungsi :
Mengkonversi bilangan BCD ke biner atau hexa. Adapun cara yang dilakukan adalah mengalikan AH dengan 10 dan menambahkan isi AL dengan hasil kali AH. Hasil pertambahan tersebut akan diletakkan di register AL kemudian AH akan dinolkan

Contoh :
Hexa dari BCD 53 adalah
MOV AH,05
MOV AL,03
AAD --->; AL = 0035h yaitu hexa dari BCD 53

Ket :
BCD 53 pada AX berupa 0503 maka pertama kali memasukkan nilai AH = 05 (MOV AH,05) dan AL = 03 (MOV AL,03)
Lalu AH dikalikan 10 -> 5h x 10 = 50h
DItambahkan ke AL -> 50h + 3h = 53h
AH dinolkan dan AL = 53h

----------------------------------------------------------------------

Mnemonic ---- : AAM (ASCII Adjust For Multiplication)
Tersedia pada : 8088 ke atas
Syntax ------ : AAM
Pengaruh flag : OF, SF, ZF, AF, PF, CF

Fungsi :
Mengkonversi bilangan biner atau hexa ke BCD. Adapun cara yang dilakukan adalah membagi AL dengan 10, kemudian hasilnya dimasukkan ke register AH sedang sisanya ke register AL.

Contoh :
Bilangan BCD; 12*9=...
MOV AL,12h
MOV BL,09h
MUL BL --->; AX = 00A2h
AAM --->; AX = 1002h

Bilangan 1002h pada AX dibaca sebagai desimal 162:
- AH = 10h = 16
- AL = 02h = 2

ket:
AX = 00A2h -> AH = 00 dan AL = A2
AH = 00 pada biner = 00000000
AL = A2 pada biner = 10100010

Pada AAM hanya bisa menerima 4 digit pertama dari kanan, maka
BCD AL = 1010 0010 = 10 2 hanya bisa mengambil nilai "2" saja.
Nilai 10 pada BCD AL ditambahkan ke AH menjadi 00 + 10.
Nilai akhir menjadi AH = 10 dan AL = 02 sehinga AX = (AH dan AL) = 1002

----------------------------------------------------------------------

Mnemonic ---- : AAS (ASCII Adjust For Subtraction)
Tersedia pada : 8088 ke atas
Syntax ------ : AAS
Pengaruh flag : AF, CF

Fungsi :
Mengatur format bilangan biner/hexa hasil pengurangan yang tidak lebih dari 4 bit. Jika 4 bit rendah dari AL lebih besar dari 9, maka AL akan dikurangi dengan 6 dan register AH akan dikurangi 1. 4 bit atas register AL akan dijadikan nol sedangkan 4 bit rendahnya akan bernilai 0-9.

Contoh :
Bilangan BCD 11-5 = ...
MOV AL,11h
MOV BL,5h
SUB AL,BL --->;AX = 000C
AAS --->;AX = FF06

Ket :
AX = 000C -> AH = 0 dan AL = 0C
0C pada AL lebih besar dari 9, maka dilakukan pengurangan 6 menjadi AL = 0C - 6 = 06
Akibatnya AH harus dikurang 1 menjadi AH = 00 - 1 = FF (pada desimal FF = -1 bukan 255)
AX = (AH dan AL) = FF06

----------------------------------------------------------------------

Mnemonic ---- : ADC (Add With Carry)
Tersedia pada : 8088 ke atas
Syntax ------ : ADC Tujuan,Sumber
Pengaruh flag : OF, SF, ZF, AF, PF

Fungsi :
Menambahkan "Sumber", "Tujuan" dan Carry Flag (1=on, 0=off), hasilnya diletakkan pada "Tujuan". Instruksi ini biasanya digunakan setelah operasi pada pertambahan atau perkalian yang menyebabkan Carry. Misalnya pertambahan yang melibatkan bilangan yang besar.

Contoh :
12345678h + 9ABCDEF0 = ...

Kedua operand di atas berukuran 4 byte. Jelas sudah melebihi kapasitas register. Disinilah digunakan mnemonic ADC.

MOV AX,1234h -->;AX = 1234
MOV BX,9ABCh -->;BX = 9ABC
MOV CX,5678h -->;CX = 5678
MOV DX,DEF0h -->;DX = DEF0
ADD CX,DX -->;CX = 3568 CF = 1 dimana 5678hexa + DEF0hexa = 13568hexa, 4digit terakhir di CX dan selebihnya di CF
ADC AX,BX -->;AX=AX+BX+CF = ACF1

Hasil penjumlahan tertampung di AX:CX yaitu ACF13568h.

----------------------------------------------------------------------

Mnemonic ---- : ADD
Tersedia pada : 8088 ke atas
Syntax ------ : ADD Tujuan,Sumber
Pengaruh flag : OF, SF, ZF, AF, PF, CF

Fungsi :
Menambahkan "Sumber" dan "Tujuan" kemudian hasilnya disimpan pada "Tujuan". Bila hasil penjumlahan tidak tertampung seluruhnya pada "Tujuan", maka CF akan diset 1

Contoh :
ADD AX,BX --->;Jumlahkan 2 register
ADD AL,[350] -->;Jumlahkan register dengan isi memori
ADD [350],AL -->;Jumlahkan isi memori dengan register
ADD AH,10h ---->;Jumlahkan register dengan immediate
ADD [350],10h ->;Jumlahkan isi memori dengan immediate

----------------------------------------------------------------------

Mnemonic ---- : AND
Tersedia pada : 8088 ke atas
Syntax ------ : AND Tujuan,Sumber
Pengaruh flag : OF, SF, ZF, PF, CF

Fungsi :
Melakukan logika AND antara "Tujuan" dan "Sumber". Hasil dari operasi AND diletakkan pada "Tujuan". Instruksi AND umumnya digunakan untuk melihat kondisi suatu bit dengan menolkan bit-bit lainnya.

Contoh :
AND AL,00001000b -->;AL=0000?000
JZ Nol ------------>;Jika bit ketiga AL=0, maka lompat

----------------------------------------------------------------------

Mnemonic ---- : BOUND (Check Bounds of Array Index)
Tersedia pada : 8088 ke atas
Syntax ------ : BOUND Tujuan,Sumber
Pengaruh flag : Tidak ada

Fungsi :
Untuk memastikan bahwa index array bertanda negatif atau positif masih masuk dalam batas limit yang didefinisikan oleh Double Word blok memory.

----------------------------------------------------------------------

Mnemonic ---- : CALL
Tersedia pada : 8088 ke atas
Syntax ------ : CALL nama-procedure
Pengaruh flag : Tidak ada

Fungsi :
Melompat dan mengerjakan instruksi pada procedure program. Pada saat instruksi Call diberikan, maka processor akan melakukan :
- PUSH CS ke stack bila procedure yang dipanggil bertipe Far
- PUSH IP ke stack
- Mengganti nilai CS dengan segmen dari procedure bila procedure tersebut bertipe Far.
- Mengganti nilai IP dengan offset dari procedure. Lakukan instruksi yang terdapat pada alamat baru (CS:IP) sampai bertemu dengan instruksi RET, setelah itu:
- POP IP
- POP CS bila procedure bertipe Far
- Kembali ke program induk/pemanggil

Contoh :
1CFE:0125 CALL N_PROC;Push IP(=0128) ke stack, IP=1066
1CFE:0128 .......
1CFE:0155 CALL F_PROC;Push CS(=1CFE),IP(=0160) ke stack CS=1FFF,IP=0179
1CFE:0160 .......
1CFE:1066 N_PROC PROC NEAR
......
......
RET ---------------->;Pop IP(=0128)
N_PROC ENDP

1FFF:0179 F_PROC PROC FAR
......
......
RET ---------------->;Pop IP(=0160) dan CS(=1CFE)

----------------------------------------------------------------------

Mnemonic ---- : CBW (Convert Byte To Word)
Tersedia pada : 8088 ke atas
Syntax ------ : CBW
Pengaruh flag : Tidak ada

Fungsi :
Mengubah isi register AL menjadi AX dengan mengubah isi register AH menjadi 0 bila AL bernilai positif atau AH akan bernilai FF bila AL negatif.

Contoh :
MOV AL,FFh
MOV BX,123Fh
CBW --------->;AX = FFFF
ADD AX,BX --->;AX = 123F + (-1) = 123E
Pada bilangan bertanda, angka FFh bagi Assembler pada AL adalah -1, bukannya 255 desimal

----------------------------------------------------------------------

Mnemonic ---- : CLC (Clear Carry Flag)
Tersedia pada : 8088 ke atas
Syntax ------ : CLC
Pengaruh flag : CF

Fungsi :
Membuat carry flag menjadi 0.

Contoh :
Untuk menjaga agar dalam operasi RCR, rotasi pertamnya yang masuk adalah 0, maka digunakan CLC dahulu.

CLC
RCR AX,1

----------------------------------------------------------------------

Mnemonic ---- : CLD (Clear Direction Flag)
Tersedia pada : 8088 ke atas
Syntax ------ : CLD
Pengaruh flag : DF

Fungsi :
Membuat direction flag berisi 0. Bila direction flag berisi 0, maka pembacaan string akan berlangsung dari memrori rendah ke tinggi. Sebaliknya bila direction flag bernilai 1, maka string akan diproses dari memori tinggi ke rendah.

Contoh :
CLD --------->;Arah Operasi string ke kanan
MOV CX,0Fh -->;Bandingkan 16 byte dari string
REPE CMPSB -->;sampai ada satu yang tidak sama

----------------------------------------------------------------------

Mnemonic ---- : CLI (Clear Interrupt Flag)
Tersedia pada : 8088 ke atas
Syntax ------ : CLI
Pengaruh flag : IF

Fungsi :
Membuat intterupt flag menjadi 0. Bila IF berisi 0 maka semua interupsi akan diabaikan oleh komputer, kecuali Nomaskable Interrupt (NMI). Umumnya CLI diberikan pada saat akan dilakukan proses yang fatal, dimana terjadinya interupsi akan menghancurkan proses tersebut.

Contoh :
Pengubahan alamay sebuah stack dilkukan dengan mengubah SS dan SP. Selama SS dan SP diubah, interupsi tidak boleh terjadi. Hal ini dikarenakan pada saat terjadi interupsi, register CS, IP dan Flags disimpan pada stack sebagai alamat kembali nantinya.

MOV AX,AlmStack
MOV DX,AlmOffset
CLI
MOV SP,DX
MOV SS,AX
STI

----------------------------------------------------------------------

Mnemonic ---- : CMC (Complement Carry Flag)
Tersedia pada : 8088 ke atas
Syntax ------ : CMC
Pengaruh flag : CF

Fungsi :
Mengubah Carry Flag menjadi kebalikan dari isi semulanya, seperti dari 0 menjadi 1 dan sebaliknya.

Contoh :
Pada kebanyakan operasi, Carry flag dijadikan sebagai tanda berhasil atau tidaknya operasi tersebut. Biasanya Carry Flag akan bernilai 0 bila operasi berhasil dan bernilai 1 bila operasi mengalami kegagalan. Dengan menggunakan perintah CMC disertai dengan ADC (pertambahan dengan carry flag), pemanfaatannya dapat digunakn untuk menghitung banyaknya keberhasilan operasi yang dilakukan, seperti:

MOV CX,Counter
XOR AX,AX

Ulang:
PUSH AX
Operasi
POP AX
CMC
ADC Ax,0
LOOP Ulang

Pada hasil akhir proses ini, register AX akan berisi banyaknya operasi yang berhasil dilakukan.

----------------------------------------------------------------------

Mnemonic ---- : CMP (Compare)
Tersedia pada : 8088 ke atas
Syntax ------ : CMP operand1,operand2
Pengaruh flag : OF, SF, ZF, AF, PF, CF

Fungsi :
Membandingkan "operand1" dengan "operand2". Adapun cara yang digunakan adalah dengan mengurangkan "operand1" dengan "operand2" (operand1-operand2). "Operand1" dan "operand2" yang dibandingkan harus mempunyai tipe data yang sama, seperti byte dengan byte (AL,AH,BL,BH,...) atau word dengan word (AX,BX,CX,...). Perintah CMP hanya mempengaruhi flags reguster tanpa mengubah isi "operand1" dan "operand2".

Contoh :
Ulang:
CMP CX,AX
JE Exit
LOOP Ulang

----------------------------------------------------------------------

Mnemonic ---- : CMPSB (Compare Strings Byte)
Tersedia pada : 8088 ke atas
Syntax ------ : CMPSB
Pengaruh flag : OF, SF, ZF, AF, PF, CF

Fungsi :
Untuk membandingkan satu byte pada alamat DS;SI dengan ES:DI. Jika direction flag bernilai 1, maka setiap selesai perbandingan register SI dan DI akan ditambah dengan 1, sebaliknya jika direction flag bernilai 0, maka setiap selesai perbandingan register SI dan DI akan dikurangi dengan 1.


----------------------------------------------------------------------

Mnemonic ---- : CMPSW (Compare Strings Word)
Tersedia pada : 8088 ke atas
Syntax ------ : CMPSW
Pengaruh flag : OF, SF, ZF, AF, PF, CF

Fungsi :
Untuk membandingkan satu word pada alamat DS:SI dengan ES:DI. Jika direction flag bernilai 1, maka setiap selesai perbandingan register SI dan DI akan ditambah dengan 2, sebaliknya jika direction flag bernilai 0, maka setiap selesai perbandingan register SI dan DI akan dikurangi dengan 2.


----------------------------------------------------------------------

Mnemonic ---- : CWD (Convert Word to Doubleword)
Tersedia pada : 8088 ke atas
Syntax ------ : CWD
Pengaruh flag : Tidak ada

Fungsi :
Mengubah tipe word(AX) menjadi doubleword(DX). Bila AX positif, maka DX berisi FFFF.L bernilai positif atau AH akan bernilai FF bila AL negatif.

Contoh :
Fungsi CWD dapat digubakan untuk mendapatkan bilangan absolute.

Absolut MACRO Bil

MOV
TEST AX,10000000b ;Apakah AX negatif?
JZ Selesai ------>;Ya, selesai
CWD
XOR AX,DX ------->;Jadikan positif
SUB AX,DX

Selesai:
ENDM

----------------------------------------------------------------------

Mnemonic ---- : DAA (Decimal Adjust After Addition)
Tersedia pada : 8088 ke atas
Syntax ------ : DAA
Pengaruh flag : OF,SF,ZF,AF,PF,CF

Fungsi :
Mengubah hasil penjumlahan 2 bilangan bukan BCD pada register AL menjadi bentuk BCD. Jika 4 bit rendah dari AL lebih besar dari 9, maka AL akan dikurangi dengan 10 dan AF diset menjadi 1,sebaliknya jika 4 bit rendah AL lebih kecil atau sama dengan 9, maka AF akan dijadikan 0. DAA sebenarnya adalah sama dengan AAA kecuali dalam hal bahwa DAA dapat mengatur baik bilangan 8 bit maupun 4 bit pada AL, sementara AAA hanya 4 bit

Contoh :
Bilangan BCD: 27h + 45h = ...

MOV AH,45h
MOV AL,27h
ADD AL,AH -->;AL = 6Ch
DAA -------->;AL = 72

Ket:
pada hekasdesimal 6C = 1101100b
BCD mengubah nilai tiap 4 digit, maka 1101100b -> 110b 1100b
Bila diubah ke desimal menjadi 6 dan 12.
Posisi 6 adalah puluhan bagi 12, maka nilai desimal pada BCD adalah 60 + 12 = 72

----------------------------------------------------------------------

Mnemonic ---- : DAS (Decimal Adjust After Substraction)
Tersedia pada : 8088 ke atas
Syntax ------ : DAS
Pengaruh flag : OF,SF,ZF,AF,PF,CF

Fungsi :
Mengubah hasil pengurangan 2 bilangan pada AL menjadi bentuk BCD. Jika 4 bit rendah dari AL lebih besar dari 9, maka AL akan dikurangi dengan 6 dan AF diset menjadi 1, sebaliknya jika 4 bit rendah dari AL lebih kecil atau sama dengan 9, maka AF akan dijadikan 0.n dijadikan 0.

Contoh :
Bilangan BCD: 50h + 23h = ...

MOV AX,50h
SUB AX,23h -->;AX = 002D
DAS --------->;AX = 0027

Ket:
AX = 002D -> AH = 00(=00000000) dan AL = 2D(=0010 1101)

Pada DAS nilai 2D pada AL lebih besar dari 2, maka dilakukan pengurangan dengan nilai 6 menjadi AL = 2D - 6 = 27

Maka AX = (AH dan AL) = 0027

Contact Us © 2006 Global Komputer