4 set instruksi_2.pdf

Upload: muhammad-syahrir-arilianto

Post on 14-Jan-2016

12 views

Category:

Documents


0 download

TRANSCRIPT

  • 29/03/2015

    1

    SET INSTRUKSIOrganisasi dan Arsitektur Komputer

    TUJUANMemahami representasi set instruksi, dan jenis-jenis format instruksiMengetahui jenis-jenis type operand digunakanMacam-macam Mode pengalamatan Format Instruksi Format Instruksi pada PentiumMemahami Implementasi Set Instruksi padaPentium ii

  • 29/03/2015

    2

    SASARAN Pengetahuan mengenai set instruksi sangatdirasakan manfaatnya oleh programer bahasatinggat rendah, seperti bahasa asembler. Bagi programer bahasa tingkat rendah sangatmemerlukan informasi tentang penggunaanregister dan spesifikasinya, struktur memori,maupun format instruksinya. Bab ini akan mengupas tentang karakteristikmesin instruksi, tipe tipe operasi, modepengalamatan dan format instruksi

    KARAKTERISTIK MESIN INSTRUKSI Instruksi mesin (machine intruction) yangdieksekusi membentuk suatu operasi danberbagai macam fungsi CPU. Kumpulan fungsi yang dapat dieksekusi CPUdisebut set instruksi (instruction set) CPU.Mempelajari karakteristik instruksi mesin,meliputi :

    Elemen elemen intruksi mesin Representasi instruksinya Jenis jenis instruksi Penggunaan alamat Rancangan set instruksi

  • 29/03/2015

    3

    1. ELEMEN INSTRUKSI MESIN Untuk dapat dieksekusi CPU suatu instruksi harusberisi elemen infrmasi yang diperlukan CPU secaralengkap dan jelas, Apa saja elemennya ?

    Operation code (Op code)Menspesifikasi operasi yang akan dilakukan. Kode operasiberbentuk kode biner

    Source Operand referenceOperasi dapat berasal dari lebih satu sumber. Operandadalah input operasi

    Result Operand referenceMerupakan hasil atau keluaran operasi

    Next Instruction ReferenceElemen ini menginformasikan CPU posisi instruksiberikutnya yang harus diambil dan dieksekusi

    2. REPRESENTASI INSTRUKSI Instruksi komputer direpresentasikan olehsekumpulan bit. Instruksi dibagi menjadibeberapa field. Field field ini disi oleh elemen elemeninstruksi yang membawa informasi bagi operasiCPU. Layout instruksi dikenal dengan format instruksi

  • 29/03/2015

    4

    FORMAT INSTRUKSI

    Kode operasi (opcode) direpresentasikan dengansingkatan singkatan, yang disebut mnemonic.Mnemonic mengindikasikan suatu operasi bagiCPU. Contoh mnemonic adalah :

    ADD = penambahan SUB = substract (pengurangan) LOAD = muatkan data ke memori

    Opcode Alamat

    OPERAND DARI OPERASIMelihat dari sumbernya, operand suatu operasidapat berada di salah satu dari ketiga daerahberikut ini :

    Memori utama atau memori virtual Register CPU Perangkat I/O

  • 29/03/2015

    5

    Contoh representasi operand secara simbolik : ADD X, Y artinya : tambahkan nilai yang beradapada lokasi Y ke isi register X, dan simpan hasilnyadi register X.

    Programer dapat menuliskan program bahasamesin dalam bentuk simbolik. Setiap opcode simbolik memiliki representasibiner yang tetap dan programer dapatmenetapkan lokasi masing masing operand

    3. JENIS JENIS INSTRUKSI Contoh suatu ekspresi bilangan :X = X + Y ;X dan Y berkorespondensi dengan lokasi 210 dan211.

    Pernyataan dalam bahasa tingkat tinggi tersebutmengintruksikan komputer untuk melakukanlangkah berikut ini : Muatkan sebuah register dengan isi lokasi memori210. Tambahkan isi lokasi memori 211 ke register. Simpan isi register ke lokasi memori 210

  • 29/03/2015

    6

    KORELASI Terlihat hubungan antara ekspresi bahasatingkat tinggi dengan bahasa mesin. Dalam bahasa tingkat tinggi, operasi dinyatakandalam bentuk aljabar singkat menggunakanvariabel. Dalam behasa mesin hal tersebut diekpresikandalam operasi perpindahan antar register

    Dapat ditarik kesimpulan bahwa instruksi instruksi mesin harus mampu mengolah datasebagai implementasi keinginan keinginankita. Terdapat kumpulan unik set instruksi, yangdapat digolongkan dalam jenis jenisnya, yaitu

    Pengolahan data (data procesing),Meliputi operasi operasi aritmetika dan logika.Operasi aritmetika memiliki kemampuan komputasiuntuk pengolahan data numerik. Sedangkaninstruksi logika beroperasi terhadap bit bit wordsebagai bit, bukannya sebagai bilangan, sehinggainstruksi ini memiliki kemampuan untukpengolahan data lain

  • 29/03/2015

    7

    Perpindahan data (data movement),Berisi instruksi perpindahan data antar register maupunmodul I/O. Untuk dapat diolah oleh CPU maka diperlukaninstruksi - instruksi yang bertugas memindahkan dataoperand yang diperlukan

    Penyimpanan data (data storage),Berisi instuksi instruksi penyimpanan ke memori.Instuksi penyimpanan sangat penting dalam operasikomputasi, karena data tersebut akan digunakan untukoperasi berikutnya, minimal untuk ditampilkan pada layarharus diadakan penyimpanan walaupun sementara

    Kontrol aliran program (program flow control), berisiinstruksi pengontrolan operasi dan pencabangan. Instruksiini berguna untuk pengontrolan status danmengoperasikan pencabangan ke set instruksi lain

    4. JUMLAH ALAMAT Jumlah register atau alamat yang digunakandalam operasi CPU tergantung format operasimasing masing CPU. Ada format operasi yang menggunakan 3, 2, 1dan 0 register. Umumnya yang digunakan adalah 2 registerdalam suatu operasi. Desain CPU saat ini telahmenggunakan 3 alamat dalam suatu operasi,terutama dalam MIPS (milion instruction persecon).

  • 29/03/2015

    8

    Alamat per instruksi yang lebih sedikit akanmembuat instruksi lebih sederhana dan pendek,tetapi lebih sulit mengimplementasikan fungsi fungsi yang kita inginkan. Karena instruksi CPU sederhana maka rancanganCPU juga lebih sederhana. Jumlah bit dan referensi per instruksi lebih sedikitsehingga fetch dan eksekusi lebih cepat. Jumlah instruksi per program biasanya jauh lebihbanyak Pada jumlah alamat per instruksi banyak, jumlah bitdan referensi instruksi lebih banyak sehingga waktueksekusi lebih lama.

    Diperlukan register CPU yang banyak, namunoperasi antar register lebih cepat. Lebih mudah mengimplementasikan fungsi fungsi yang kita inginkan. Jumlah instruksi per program jauh lebih sedikit. Untuk lebih jelas perhatikan contoh instruksi instruksi dengan jumlah register berbeda untukmenyelesaikan persoalan yang sama

  • 29/03/2015

    9

    Contoh penggunaan set instruksi dengan alamat1, 2, dan 3 untuk menyelesaikan operasihitungan : Y = (A B) (C + D* E)

    CONTOH INSTRUKSI 2 DAN 3 ALAMAT Instruksi 3 alamat :

    Instruksi 2 alamat :

  • 29/03/2015

    10

    Instruksi 1 alamat dan 0 Alamat :

    Spesifikasi instruksi 3 alamat : Simbolik : a = b + c. Format alamat : hasil, operand 1, operand 2 Digunakan dalam arsitektur MIPS.Memerlukan word panjang dalam suatuinstruksi.

  • 29/03/2015

    11

    Spesifikasi instruksi 2 alamat : Simbolik : a = a + b. Satu alamat diisi operand terlebih dahulukemudian digunakan untuk menyimpanhasilnya. Tidak memerlukan instruksi yang panjang. Jumlah instruksi per program akan lebih banyakdaripada 3 alamat. Diperlukan penyimpanan sementara untukmenyimpan hasil.

    Spesifikasi instruksi 1 alamat :Memerlukan alamat implisit untuk operasi.Menggunakan register akumulator (AC) dandigunakan pada mesin lama.Spesifikasi instruksi 0 alamat : Seluruh alamat yang digunakan implisit. Digunakan pada organisasi memori, terutamaoperasi stack

  • 29/03/2015

    12

    5. RANCANGAN SET INSTRUKSI Aspek paling menarik dalam arsitekturkomputer adalah perancangan set instruksi,karena rancangan ini berpengaruh banyak padaaspek lainnya. Set instruksi menentukan banyak fungsi yangharus dilakukan CPU. Set instruksi merupakan alat bagi parapemrogram untuk mengontrol kerja CPU. Pertimbangan : Kebutuhan pemrogram menjadibahan pertimbangan dalam merancang setinstruksi

    MASALAH RANCANGAN YANG FUNDAMENTAL MELIPUTI : Operation repertoire :

    Berapa banyak dan operasi operasi apa yang harustersedia Sekompleks apakah operasi itu seharusnya

    Data types : Jenis data Format data

    Instruction format Panjang instruksi, Jumlah alamat, Ukuran field

    Registers Jumlah register CPU yang dapat direferensikan olehinstruksi, dan fungsinya

    Addressing mode untuk menspesifikasi alamat suatu operand

  • 29/03/2015

    13

    TIPE OPERASI Dalam perancangan arsitektur komputer, jumlahkode operasi akan sangat berbeda untuk masing masing komputer, tetapi terdapat kemiripandalam jenis operasinya

    JENIS OPERASI KOMPUTER Transfer data. Konversi Aritmetika. - input/Output Logika. - Kontrol sistem dan transfer kontrol

  • 29/03/2015

    14

    OPERASI SET INSTRUKSI SECARA UMUM

    LANJ

  • 29/03/2015

    15

    LANJT

    LANJT

  • 29/03/2015

    16

    LANJT

    LANJT

  • 29/03/2015

    17

    TRANSFER DATA Instruksi tranfer data harus menetapkan :

    Lokasi operand sumber Lokasi operand tujuan Panjang data yang akan dipindahkan Mode pengalamatannya

    Apabila sebuah atau kedua operand berada di dalammemori, maka CPU harus melakukan sebagian atauseluruh tindakan berikut :1. Menghitung alamat memori, yang didasarkan pada modealamatnya.2. Apabila alamat mengacu pada virtual memori harusdicari alamat memori sebenarnya.3. Menentukan apakah alamat berada dalam cache memori.4. Bila di cache tidak ada, dikeluarkan perintah ke modulmemori