53577633 bab 8 operasi aritmatika

Upload: muzanni-reza-muzanni

Post on 17-Jul-2015

107 views

Category:

Documents


0 download

TRANSCRIPT

1.

Tujuan Percobaan Pada latihan dalam membuat program pada laporan ini, diharapkan

mahasiswa memahami tentang operasi aritmatika

serta atributnya dan juga

menggunakan looping dengan menggunakan program assembly 2. Teori Penunjang a. Operasi penambahan ADD Perintah ADD ini akan menambahkan nilai pada tujuan dan asal.Hasil yang didapat ditaruh pada tujuan, dalam bahasa pascalnya sama dengan instruksi Tujuan:=Tujuan + Asal. ADC Perbedaan pada perintah ADC ini ,Tujuan tempat menampung hasil pertambahan tujuan dan asal di tambah lagi dengan carry flag (Tujuan:=Tujuan + Asal + Carry). INC Perintah INC (Increment) digunakan khusus untuk menambahkan dengan 1.Perintah INC hanya menggunakan 1 byte memori,

sedangkan ADD dan ADC menggunakan 3 byte memory

Contoh program penambahan dan debug

b. Operasi pengurangan SUB Perintah SUB akan mengurangkan nilai pada Tujuan dengan Asal. Hasil yang di dapat akan di taruh pada tujuan, dalam bahasa pascal sama dengan interaksi Tujuan:=Tujuan Asal. SBB Pada pengurangan bilangan yang besar (lebih dari 16 bit), bias di gunakan perintah SBB (Substract With Carry). Dimana hasil yang didapat dikurangi lagi dengan Carry Flag (Tujuan:=Tujuan-Asal-CF).

Contoh Program pengurangan

c. DEC Perintah DEC (Decrement) di gunakan khusu untuk Pengurangan dengan 1.Perintah DEC hanya menggunakan 1 byte memory, sedangkan SUB dan SBB menggunakan 3 byte memory. Contoh program mencetak karakter Z s.d A

d. Operasi perkalian Untuk perintah perkalian digunakan MUL dengan syntax MUL Sumber. Sumber di sini dapat berupa registrasi 8 bit (contoh BL,BH), 16 bit (BX,DX) atau suatu variable.

Contoh program perkalian dengan MUL

e. Operasi Pembagian Operasi pada pembagian pada dasarnya sama dengan perkalian. Pada operasi pembagian di gunakan DIV Sumber Bila sumber merupakan 8 bit seperti DIV BH, maka computer computer akan mengambil nilai pada registrasi AX dan membagi pada nilai BH. Sedangkan pada sumber 16 bit seperti DIV BX, maka computer akan mengambil nilai yang terdapat pada registrasi DX:AX dan di bagi dengan nilai BX.

Contoh program pembagian bilangan 16 bit

4. Analisa Program Program Bab8-1 Pada program ini kita dimintak untuk meregistrasi nilai,dimana

meregistrasikannya itu di sebut general purpose. Pada baris pertama menunjukan nilai FFFE, sedangkan pada baris ke dua menunjukan nilai yang sama yaitu 3597, sedangkan baris ke tiga menunjukan nilai B415 yang mengartikan alamat 3597:0100 Program Bab8-2 Disini dapat kita lihat bagaimana caranya mendefinisikan satu nilai konstanta Dan variable dengan: ALo EQU 0EFFFh AHi EQU 122h BLo EQU OFFFFh BHi EQU 0FEh HslLo DW ? HslHi DW ? Tempat program kita lompati dengan JMP agar tidak mengeksekusi data program sebagai perintah. Program Bab 8-3 Pada program ini kita dimintak untuk mencetak karakter Z sd A. Perintah DEC akan mengurangi nilai diregistrasi dengan 1. Program Bab8-4 Pada program ini MUL akan digunakan sebagai perintah untuk

mengalikan.MUL Sumber dapat berupa registrasi bit (8 bit,16bit).Bila sumber merupakan 8 bit seperti MUL BH maka BH akan di kalaikan dengan nilai AL. Kalau 16 bit, bila sumbernya adalah BX,maka akan dikalikan dengan nilai AX.

5. Kesimpulan Kesimpulan pada bab 8 tentang Operasi Aritmatika ini adalah : Pada operasi penambahan mempunyai sifat Komutatif dan Assosiatif, oleh karena itu urutan penjumlahan tidak mempengaruhi hasilnya. Elemen identitas dari penjumlahan adalah nol (0), disini penambahan sembarang bilangan dengan identitas (nol) akan tidak akan merubah angka tersebut. Selanjutnya elemen bilangan invers dari penambahan adalah negatif dari bilangan itu sendiri, di sini penambahan suatu bilangan dengan inversnya akan menghasilkan identitas (nol). Pada operasi ini dapat kita gunakan perintah ADD, ADC serta INC, ADD instruksinya (Tujuan:=Tujuan + Asal), ADC (Tujuan:=Tujuan + Asal + Carry) dan INC tergantung memory yang kita gunakan. Pengurangan tidak mempunyai sifat baik Komutatif maupun Assosiatif. Oleh karena hal ini, terkadang pengurangan dipandang sebagai penambahan suatu bilangan dengan negatif bilangan lainnya, a - b = a + (-b). Dengan cara penulisan ini maka sifat Komutatif dan Assosiatif akan dipenuhi. Pada pengurangan juga dapat kita gunakan SUB, SBB dan DEC. SUB instruksinya (Tujuan : = Tujuan asal), SBB (Tujuan:=Tujuan- Asal- CF) CF disini di maksud dengan Carry Flag, sedangkan DEC digunakan jika pengurangan dengan 1. Perkalian, dipandang sebagai penjumlahan berulang, tentunya mempunyai sifat Komutatif dan Assosiatif. Lebih jauh lagi perkalian mempunyai sifat Distributif atas Penambahan dan Pengurangan. Elemen identitas untuk perkalian adalah satu (1), disini perkalian sembarang bilangan dengan identitas (satu) akan tidak akan merubah angka tersebut. Selanjutnya elemen bilangan invers dari perkalian adalah satu-per-bilangan itu sendiri, di sini perkalian suatu bilangan dengan inversnya akan menghasilkan identitas (satu). Pada perkalian di gunakan perintah MUL, dengan syntax MUL Sumber.Sumber di sini berupa registrasi 8 bit (contohnya BL,BH), dan registrasi 16 bit(BX,DX) atau suatu variable.

Pembagian tidak bersifat Komunitatif maupun Assosiatif. Sebagaimana Pengurangan dapat dipandang sebagai kasus khusus dari penambahan, demikian pula Pembagian dapat dipandang sebagai Perkalian dengan elemen invers pembaginya, sebagai contoh A/B =A*(1/B). Dengan cara penulisan seperti ini maka semua sifat-sifat perkalian seperti Komunitatif dan Assosiatif akan dipenuhi oleh Pembagian. Pada pembagian di gunakan dengan perintah DIV dengan syntax DIV Sumber Bila sumbernya 8 bit seperti DIV BH,maka regitrasi akan mengambil nilai dari AX dan membaginya dengan BH. Sedangkan bila sumbernya 16 bit seperti DIV BX, maka nilai akan di ambil dari registrasi DX:AX dan membaginya dengan nilai BX.

6. Tugas 1. Cobalah trace dengan debug untuk melihat hasil yang didapat pada registrasi AX dan DX. Pada program 8.5, jelaskan dan rubah besaran nilainya.

Jadi hasilnya, Nilai AX : 00F7 Nilai DX :0001 Penjelasannya : Nilai AX awalnya dimasukkan 01EFh yang akan di simpan di A, lalu akan di bagi 2, yang di simpan di B. Dengan menggunakan fungsi DIV 01EFh di bagi 2, maka nilai AX sekarng 00F7 dan sisanya DX adalah 0001.

2. Ubalah nilai AX menjadi 400h, Berapa nilai DX? ,

Jadi setelah di rubah, AX menjadi 400h,maka nilai DX nya menjadi DX: 0000

DAFTAR PUSTAKA Suheri, Asep. 2009. Penuntun Praktikum Pengantar Organisasi Komputer. Bogor : IPB

LAPORAN PRAKTIKUM PENGANTAR PORGANISASI KOMPUTER OPERASI ARITMATIKA

Kelas Nama NIM

: TEK B 2 : Dimas Widya Putra Pratama : J3D110063

PROGRAM KEAHLIAN TEKNIK KOMPUTER DIREKTORAT PROGRAM DIPLOMA INSTITUT PERTANIAN BOGOR 2011