120 likes | 260 Views
Mikroprosesor memungkinkan kita untuk melakukan manipulasi aritmetika baik terhadap data Binary Code Desimat (BCD) maupun terhadap data American Standard Code for Information Interchange (ASCII). ARITMETIKA BCD DAN ASCII.
E N D
Mikroprosesormemungkinkankitauntukmelakukanmanipulasiaritmetikabaikterhadap data Binary Code Desimat(BCD) maupunterhadap data American Standard Code for Information Interchange (ASCII). ARITMETIKA BCD DAN ASCII
Adaduateknikoperasiaritmetika yang dilakukanterhadap data BCD: penjumlahandanpengurangan. Rangkaianinstruksinyaterdiridariduainstruksi yang mengoreksihasildarisuatupenambahan BCD dansuatupengurangan BCD. Penjumlahan BCD selaludiikutiinstruksi DAA (decimal adjust after addition), danpengurangan BCD diikutidenganinstruksi DAS (decimal adjust after subtraction) Aritmetika BCD
Instruksi DAA diberikansesudahinstruksi ADD atau ADC untukmengaturhasilnyakedalam format BCD. Anggap DX dan BX masing-masingberisipaket 4-digit bilangan BCD- Instruksi DAA
Instruksi DAS memilikifungsi yang samadenganinstruksi DAA, kecualibahwainstruksiinidiberikansesudahprosespengurangandanbukansesudahprosespenambahan. Instruksi DAS.
Instruksi-instruksiaritmetika ASCII berfungsidenganbilangan-bilanganberkode-Ascii. Bilangan-bilanganininilainyaberkisarantara 30H sampai 39H untukbilangan 0-9. Ada 4 instruksi yang digunakanuntukoperasiaritmetika ASCII yaitu: AAA (ASCII adjust after addition), AAD (ASCII adjust before division), AAM (ASCII adjust after multiplication), dan AAS (ASCII adjust after subtraction). Instruksi-instruksiinimenggunakan register AX sebagaisumberdantujuannya. Aritmetika ASCII
Penjumlahan 2 bilangankode-ASCII I digit tidakakanmenghasilkan data yang dapatdigunakan. Instruksi AAA.
Tidaksepertiinstruksipenyesuaianlainnya, instruksi AAD ditampilkansebeluminstruksipembagian. Instruksi AAD membutuhkanadanya data pada register AX dalam 2-digit bilangan BCD takterpaket (bukan ASCII) sebelumdieksekusi. Setelahpenyesuaian register AX denganinstruksi AAD, kemudianbagilahdenganbilangan BCD takterpaketuntukmenghasilkan 1 digit di AL dengansisanyadi AH. instruksi AAD.
Instuksi AAM mengikuti instruksi perkalian setelah proses perkalian 2 bilangan BCD tak terpaket 1 digit Contoh 5-23 menunjukkan program singkat yang mengalikan 5 dengan 5. Hasil perkaliannya adalah 0019H di register AX. Setelah pengaturan dengan instruksi AAM, AX berisi 0205H. Ini merupakan hasil dalam bilangan BCD tak terpaket 25. Jika 3030H dijumlahkan dengan 0205H, hasilnya ASCII 3235H.. instruksi AAM.
Sepertiinstruksipengaturan ASCII, AAS mengaturisi register AX setelahinstruksipengurangan ASCII. Sebagaicontohanggaplahkitaakanmengurangkan 39H dengan 35H. Hasilnya O4H, tidakmemerlukankoreksi. Di siniinstruksi AAS akanmemodifikasi AH atau AL. Dengankata lain, jika 37H dikurangi 38H, AL akanbernilai 09H danbilangandi AH akandidekremendengan 1. Dekremeninimemungkinkanbilangan ASCII berdigit-banyakdapatdikurangkansatusama lain. Instruksi AAS