Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Pertemuan 2 (INSTRUKSI MESIN DAN PROGRAM)

Presentasi serupa


Presentasi berjudul: "Pertemuan 2 (INSTRUKSI MESIN DAN PROGRAM)"— Transcript presentasi:

1 Pertemuan 2 (INSTRUKSI MESIN DAN PROGRAM)
2.1 BILANGAN, OPERASI ARITMATIKA, DAN KARAKTER Komputer dibangun dengan menggunakan sirkuit logika yang beroprasi pada informasi yang dipresentasikan dengan dua nilai sinyal listrik yaitu 0 dan 1; dan kita mendefinisikan jumlah informasi yang direpresentasikan oleh sinyal sebagai bit informasi, bit adalah singkatan dari binary digit. Cara menyatakan bilangan yang paling alami untuk menyatakan bilangan dalam system computer adalah dengan string bit atau bilangan biner. Group 4 PTIK 09

2 2.1.1 REPRESENTASE BILANGAN
Misalkan suatu n-bit vector B=bn-1…b1b0 Dimana bi = 0 atau 1 untuk 0 ≤ I ≤ n-1. Vector ini dapat menyatakan nilai integer tidak bertanda V pada rentang 0 hingga 2n-1, dimana V(B)=bn-1X2n-1+…+b1+X21+b0X20 Kita sangat membutuhkan representasi bilangan positif dan negative. Ada tiga system digunakan untuk mempresentasikan bilangan tersebut: Sign-and-magnitude 1’s-complement 2’s-complement Pada ketiga system tersebut , bit paling kiri adalah 0 untuk bilangan positif dan 1 untuk bilangan negative. Group 4 PTIK 09

3 2.1.2 PENAMBAHAN BILANGAN POSITIF
Misalkan penambahan dua bilangan 1-bit. Hasilnya ditunjukkan pada Gambar 2.2 perhatikan bahwa jumlah 1 dan 1 memerlukan 2-bit vector 10 untuk menyatakan nilai 2. Kita nyatakan bahwa sum adalah 0 dan carry-out adalah 1. Group 4 PTIK 09

4 2.1.3 PENAMBAHAN DAN PENGURANGAN BILANGAN BERTANDA
Kita memperkenalkan tiga system untuk menyatakan bilangan positif dan negative, atau cukup disebut bilangan bertanda.sistem tersebut berbeda hanya dalam hal menyatakan nilai negative. Sistem sign-and-magnitude adalah representasi yang paling sederhana, tetapi juga paling buruk untuk operasi penambahan dan pengurangan. Metode 1’s-complement agak lebih baik. System 2’s-complement adalah metode yang paling efisien untuk melakukan opesari penambahan dan pengurangan. Group 4 PTIK 09

5 2.1.4 OVERFLOW DALAM ARITMATIKA INTEGER
Pada saat hasil operasi aritmatika di luar rentang yang representable tersebut, maka terjadi overlow aritmatika. Overlow dapat terjadi jika kedua summand memiliki tanda yang sama. Tentu saja penambahan bilangan dengan tanda yang berbeda tidak dapat menyebabkan overlow, jadi kesimpulannya : - Overlow hanya dapat terjadi pada saat penambahan dua bilangan yang memiliki tanda sama. - Carry-ourt dari posisi sign-bit bukan merupakan indicator yang cukup terhadap overlow pada saat penambahan bilangan bertanda. Cara sederhana untuk mendeteksi overlow adalah dengan memperhatikan dua summand X dan Y dan tanda pada jawabannya. Group 4 PTIK 09

6 2.1.5 KARAKTER Karakter dapat berupa alphabet, digit decimal, tanda baca, dan lain sebagainya. Karakter tersebut direpresentasikan dengan kode yang biasanya memiliki panjang delapan bit. Salah satu kode semacam itu yang paling banyak digunakann adalah kode American Standards Committee on Information Interchange (ASCII) yang dideskripsikan pada Apendiks E. Group 4 PTIK 09

7 2.2 LOKASI MEMORI DAN ALAMAT
Operan bilangan dan karakter, seperti halnya instruksi, disimpan dalam memori computer. Memori terdiri dari jutaan sel penyimpanan, dimana tiap sel tersebut menyimpan suatu bit informasi yang berupa nilai 0 dan 1. Mengakses memori untuk menyimpan atau mengambil suatu item informasi, baik berupa word atau byte, memerlukan nama yang berbeda atau alamat untuk tiap lokasi item. Group 4 PTIK 09

8 2.2.1 BYTE ADDRESSIBILITY Sekarang kita memiliki tiga kuantitas informasi dasar yang perlu diperhatikan: bit, byte, dan word. Byte selalu 8 bit, tetapi word length biasanya berada pada rentang 16 hingga 64 bit. Penetapan yang paling praktis adalah dengan alamat yang berurutan mengacu pada lokasi byte yang berurutan dalam memori. Ini merupakan penetapan yang digunakan pada sebagian besar computer modern. Lokasi byte memiliki alamat 0,1,2,… sehingga, jika word length suatu mesin adalah 32 bit, maka word yang berurutan berada pada alamat 0,4,8,…., dengan tiap word terdiri dari empat byte. Group 4 PTIK 09

9 2.2.2 PENETAPAN BIG-ENDIAN LITTLE-ENDIAN
Nama big-endian dipakai jika alamat byte rendah digunakan untuk more significant byte (byte paling kiri) dari word tersebut. Nama little-endian digunakan untuk pengaturan sebaliknya, yaitu alamt byte rendah dipakai untuk less significant byte (byte paling kanan) dari word tersebut. Kata “more significant” dan less significant” digunakan dalam kaitannya dengan weigth (pangkat 2) yang ditetapkan pada bit saat word tersebut menyatakan suatu bilangan. Penetapan big-endian dan little-endian digunakan dalam mesin komersial. Selain menetukan urutan alamat byte dalam word, juga perlu menentukan label bit atau word. Group 4 PTIK 09

10 2.2.3 WORD ALLIGNMENT Dalam 32-bit word length, batasan word alami terjadi pada alamat 0,4,8,…, sebagaimana ditunjukkan pada gamabar 2.7. kita katakan bahwa alokasi word tersebut memiliki alamat aligned address. Secara umum, word disebut aligned dalam memori jika word tersebut mulai pada alamat byte yang merupakan kelipatan jumlah byte didalam word. Group 4 PTIK 09

11 2.2.4 MENGAKSES BILANGAN, KARAKTER, DAN STRING KARAKTER
Sebuah bilangan biasanya memiliki satu word. Bilangan tersebut dapat diakses dalam memori dengan menetapkan alamat word-nya. Seperti halnya karakter individuu dapat diakses melalui alamat byte-nya. Pada banyak aplikasi, diperlukan penanganan string karakter variable length. Awal string diindikasikan dengan menyatakan byte yang berisi karakter pertama pada alamat tersebut. Group 4 PTIK 09

12 2.3  OPERASI MEMORI Intruksi program dan operand data disimpan dalammemori. Untuk mengeksekusi suatu intruksi, sirkuit control prosesor harus mengisikan intruksi tersebut dalam word untuk ditransfer dari memori ke prosessor. Operand dan hasil juga dipindahkan antara memori dan prosesor. Sehingga diperlukan dua operasi dasar yang melibatkan memori tersebut,yang disebut Load (atau Read atau Fetch) dan Store (atau Write). Group 4 PTIK 09

13 2.4 INTRUKSI DAN SEQUENCING INTRUKSI
Computer harus memiliki intruksi yang mampu melakukan empat operasi : 1.Transfer data antara memori dan register prosessor. 2.Operasi aritmatika dan logika pada data. 3. Sequencing program dan control 4. Transfer I/O Group 4 PTIK 09

14 2.4.1 NOTASI TRANSFER REGISTER
Kita perlu mendeskripsikan informasi dari satu lokasi dalamkomputer ke lokasi yang lain. Lokasi yang mungkin terlibat adalah lokasi memori, register prosessor atau register dalamsubsistem I/O. Seringkali kita menyatakan suatu lokasi dengan nama simbolik yang merupakan singkatan dari alamat biner hardware-nya. Group 4 PTIK 09

15 2.4.2 NOTASI BAHASA ASSEMBLY
Kita memerlukan tipe notasi lain untuk menyatakan intruksi mesin dan program. Untuk hal ini, kita menggunakan format bahasa assembly. Misal, suatu intruksi yang menghasilkan transfer yang dideskripsikan di atas, dari lokasi memoriLOC ke register processor R1, ditetapkan dengan pernyataan Move LOC, R1 Isi LOC tidak berubah karena eksekusi intruksi ini, tetapi isi lama register di-overwrite. Group 4 PTIK 09

16 2.4.3 TIPE INTRUKSI DASAR Operasi penambahan dua bilangan adalah kemampuan mendasar pada tiap computer. Pernyataan: C=A+B Dalam program bahasa tingkat-tinggi adalah perintah ke computer untuk menambahkan nilai sekarang dari dua variable yang disebut A dan B, dan untuk menetapkan jumlahnya ke variable ketiga, C. Group 4 PTIK 09

17 2.4.4 EKSEKUSI INSTRUKSI DAN STRAIGHT-LINE SEQUENCING
Kita mengasumsikan bahwa word length adalah 32bit dan memori tersebut byte address- able. Tiga instruksi program berada pada lokasi word yang berurutan, mulai dari lokasi i. Karena tiap intruksi memiliki panjang 4 byte,maka instruksi kedua dan ketiga mulai pada alamat i+4 dan i+8. Untuk penyederhanaan, kita juga mengasumsikan alamat memori penuh dapat langsung ditentukan dalam instruksi word tunggal, sekalipun biasanya tidak mungkin bagi ukuran ruang alamat dan word length pada prosesoi saat ini. Group 4 PTIK 09

18 2.4.5 BRANCHING Alamat lokasi memori yang berisi n bilangan secara simbolik dinyatakan sebagai NUM1, NUM2, NUMn, dan instruksi Add terpisah digunakan untuk menambahkan tiap bilangan ke isi register R0. Setelah semua bilangan telah ditambahkan, hasilnya diletakkan pada lokasi memori SUM. Group 4 PTIK 09

19 2.4.6 CONDITION CODE Prosesor mencatat informasi hasil berbagai operasi untuk digunakan oleh instruksi conditional branch berikutnya. Hal ini dicapai dengan mencatat informasi yang diperlukan dalam bit individu, yang sering di sebut condition code flag. Flag tesebut dikelompokkan bersama dalam register prosessor khusus yang disebut condition code register atau status register. Group 4 PTIK 09

20 2.4.7 PEMBUATAN ALAMAT MEMORI
Tujuan blok instruksi pada LOOP adalah untuk menambahkan bilangan yang berbeda dari list pada tiap lewatan melalui loop. Karenanya, instruksi Add dalam blok tersebut harus mengacu ke alamat yang berbeda pada tiap lewatan. Bagaimana alamat tersebut ditetapkan? Alamat operand memori tidak dapat diberikan secara langsung ke instruksi Add tunggal pada loop tersebut. Sebaliknya, alamat tersebut perlu dimodifikasi pada tiap lewatan memalalui loop. Group 4 PTIK 09

21 2.5 MODE PENGALAMATAN Pada saat mentranslasi program bahasa tingkat tinggi menjadi bahasa assembly, compiler, harus mampu mengimplementasi konstruksi ini menggunakan fasilitas yang disediakan dalam set instruksi komputer di mana program akan dijalankan. Cara yang berbeda dalam menentukan lokasi suatu operand ditetapkan dalam suatu instruksi yang disebut sebagai mode pengalamatan. Group 4 PTIK 09

22 2.5.1 IMPLEMENTASI VARIABEL DAN KONSTANTA
Variabel dan konstanta adalah tipe data yang paling sederhana dan terdapat dalam hamper setiap program computer.Dalam bahasa assembly,suatu variable dinyatakan dengan mengalokasikan suatu register atau lokasi memori untuk menyimpan nilainya.sehingga nilai tersebut dapat diubah seperlunya menggunakan intruksi yang sesuai. Group 4 PTIK 09

23 2.5.2 INDIRECTION DAN POINTER
Inderection dan penggunaan pointer adalah konsep yang penting dan sangat berguna dalam pemprograman.Misalkan suatu analog pemburuan harta:Dalam intruksi untuk pemburuan anda mungkin diperintahkan untuk pergi kesuatu alamat. Bukannya menemukan harta disana,anda menemukan catatan yang memberi andaalamat lain dimana anda akan menemukan harta tersebut.dengan mengubah catatan tersebut,lokasi harta dapat diubah,tetapi intruksi perburuan tetap sama. Group 4 PTIK 09

24 2.5.3 INDEXING DAN ARRAY Mode pengalamatan selanjutnya yang akan kita bahas menyediakan berbagai fleksibilitas yang berbeda untuk mengakses operand.Mode ini sangat berguna dalam menangani list dan array. Mode indeks – effective address operand dihasilkan dengan menambahkan nilai konstanta keisi register. Group 4 PTIK 09

25 2.5.4 PENGALAMAN RELATIVE Mode Relative – effective addres ditentukan oleh mode index menggunakan program counter yang menggunakan program counter yang menggantikan register general-purpose Ri. Mode ini dapat digunakan untuk mengakses operand data.Tetapi,penggunaanya yang paling umum adalah untuk menetapkan alamat target dalam instruksi branch.Intruksi semacam. Branch>0 L00P Menyebabkan eksekusi program menuju lokasi target branch yang identifikasi dengan nama LOOP jika branch condition terpenuhi. Group 4 PTIK 09

26 2.5.5 MODE TAMBAHAN Sejauh ini kita telah membahas lima mode pengalamatan dasar – Immediate,Register,Absolute (Direct),Inderect,dan index-yang terdapat pada sebagian besar computer.kita telah mendapatkan sejumlah versi umum mode index,yang tidak semua dapat ditemukan pada tiap computer.sekalipun mode ini mencukupi untuk komputasi umum,banyak computer menyediakan mode tambahan untuk membantu tugas pemprograman tertentu.Dua mode yang akan didekkripsikan berikutnya berguna untuk mengakses item data pada lokasi yang berurutan dalam memori. Group 4 PTIK 09


Download ppt "Pertemuan 2 (INSTRUKSI MESIN DAN PROGRAM)"

Presentasi serupa


Iklan oleh Google