3 set instruksi -...
TRANSCRIPT
![Page 1: 3 Set Instruksi - khairina.blog.uma.ac.idkhairina.blog.uma.ac.id/wp-content/uploads/sites/394/2018/11/set-instruksi-Sukarno...yOperation code (Op code) ... ySource Operand reference](https://reader031.vdocuments.net/reader031/viewer/2022012318/5ce9416288c993c0208d0c93/html5/thumbnails/1.jpg)
SET INSTRUKSIOrganisasi dan Arsitektur Komputer
![Page 2: 3 Set Instruksi - khairina.blog.uma.ac.idkhairina.blog.uma.ac.id/wp-content/uploads/sites/394/2018/11/set-instruksi-Sukarno...yOperation code (Op code) ... ySource Operand reference](https://reader031.vdocuments.net/reader031/viewer/2022012318/5ce9416288c993c0208d0c93/html5/thumbnails/2.jpg)
TUJUAN
Memahami representasi set instruksi, dan jenis-p , jjenis format instruksiMengetahui jenis-jenis type operand digunakanMacam-macam Mode pengalamatanFormat InstruksiF t I t k i d P tiFormat Instruksi pada PentiumMemahami Implementasi Set Instruksi padaPentium ii
![Page 3: 3 Set Instruksi - khairina.blog.uma.ac.idkhairina.blog.uma.ac.id/wp-content/uploads/sites/394/2018/11/set-instruksi-Sukarno...yOperation code (Op code) ... ySource Operand reference](https://reader031.vdocuments.net/reader031/viewer/2022012318/5ce9416288c993c0208d0c93/html5/thumbnails/3.jpg)
SASARAN
Pengetahuan mengenai set instruksi sangat g g gdirasakan manfaatnya oleh programer bahasatinggat rendah, seperti bahasa asembler.B i b h ti k t d h tBagi 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 mode mesin instruksi, tipe – tipe operasi, mode pengalamatan dan format instruksi
![Page 4: 3 Set Instruksi - khairina.blog.uma.ac.idkhairina.blog.uma.ac.id/wp-content/uploads/sites/394/2018/11/set-instruksi-Sukarno...yOperation code (Op code) ... ySource Operand reference](https://reader031.vdocuments.net/reader031/viewer/2022012318/5ce9416288c993c0208d0c93/html5/thumbnails/4.jpg)
KARAKTERISTIK MESIN INSTRUKSI
Instruksi mesin (machine intruction) yang ( ) y gdieksekusi membentuk suatu operasi danberbagai macam fungsi CPU.K l f i d t di k k i CPU Kumpulan fungsi yang dapat dieksekusi CPU disebut set instruksi (instruction set) CPU.Mempelajari karakteristik instruksi mesin, Mempelajari karakteristik instruksi mesin, meliputi :
Elemen – elemen intruksi mesinR i i k iRepresentasi instruksinyaJenis – jenis instruksiPenggunaan alamatggRancangan set instruksi
![Page 5: 3 Set Instruksi - khairina.blog.uma.ac.idkhairina.blog.uma.ac.id/wp-content/uploads/sites/394/2018/11/set-instruksi-Sukarno...yOperation code (Op code) ... ySource Operand reference](https://reader031.vdocuments.net/reader031/viewer/2022012318/5ce9416288c993c0208d0c93/html5/thumbnails/5.jpg)
1. ELEMEN INSTRUKSI MESIN
Untuk dapat dieksekusi CPU suatu instruksi haruspberisi elemen infrmasi yang diperlukan CPU secaralengkap dan jelas, Apa saja elemennya ?
Operation code (Op code)Operation code (Op code)Menspesifikasi operasi yang akan dilakukan. Kode operasiberbentuk kode binerSource Operand referenceSource Operand referenceOperasi dapat berasal dari lebih satu sumber. Operand adalah input operasiResult Operand referenceResult Operand referenceMerupakan hasil atau keluaran operasiNext Instruction ReferenceElemen ini menginformasikan CPU posisi instruksiElemen ini menginformasikan CPU posisi instruksiberikutnya yang harus diambil dan dieksekusi
![Page 6: 3 Set Instruksi - khairina.blog.uma.ac.idkhairina.blog.uma.ac.id/wp-content/uploads/sites/394/2018/11/set-instruksi-Sukarno...yOperation code (Op code) ... ySource Operand reference](https://reader031.vdocuments.net/reader031/viewer/2022012318/5ce9416288c993c0208d0c93/html5/thumbnails/6.jpg)
2. REPRESENTASI INSTRUKSI
Instruksi komputer direpresentasikan olehp psekumpulan bit. Instruksi dibagi menjadibeberapa field.Fi ld fi ld i i di i l h l lField – field ini disi oleh elemen – elemeninstruksi yang membawa informasi bagi operasiCPU.Layout instruksi dikenal dengan format instruksi
![Page 7: 3 Set Instruksi - khairina.blog.uma.ac.idkhairina.blog.uma.ac.id/wp-content/uploads/sites/394/2018/11/set-instruksi-Sukarno...yOperation code (Op code) ... ySource Operand reference](https://reader031.vdocuments.net/reader031/viewer/2022012318/5ce9416288c993c0208d0c93/html5/thumbnails/7.jpg)
FORMAT INSTRUKSI
Kode operasi (opcode) direpresentasikan dengan
Opcode Alamat
singkatan – singkatan, yang disebut mnemonic.Mnemonic mengindikasikan suatu operasi bagiCPUCPU.Contoh mnemonic adalah :
ADD = penambahanSUB = substract (pengurangan)LOAD = muatkan data ke memori
![Page 8: 3 Set Instruksi - khairina.blog.uma.ac.idkhairina.blog.uma.ac.id/wp-content/uploads/sites/394/2018/11/set-instruksi-Sukarno...yOperation code (Op code) ... ySource Operand reference](https://reader031.vdocuments.net/reader031/viewer/2022012318/5ce9416288c993c0208d0c93/html5/thumbnails/8.jpg)
OPERAND DARI OPERASI
Melihat dari sumbernya, operand suatu operasi y , p pdapat berada di salah satu dari ketiga daerahberikut ini :
M i t t i i t lMemori utama atau memori virtualRegister CPUPerangkat I/O
![Page 9: 3 Set Instruksi - khairina.blog.uma.ac.idkhairina.blog.uma.ac.id/wp-content/uploads/sites/394/2018/11/set-instruksi-Sukarno...yOperation code (Op code) ... ySource Operand reference](https://reader031.vdocuments.net/reader031/viewer/2022012318/5ce9416288c993c0208d0c93/html5/thumbnails/9.jpg)
Contoh representasi operand secara simbolik :p pADD X, Y artinya : tambahkan nilai yang beradapada lokasi Y ke isi register X, dan simpan hasilnya di register Xdi register X.
Programer dapat menuliskan program bahasa mesin dalam bentuk simbolik.Setiap opcode simbolik memiliki representasibiner yang tetap dan programer dapatmenetapkan lokasi masing – masing operandmenetapkan lokasi masing masing operand
![Page 10: 3 Set Instruksi - khairina.blog.uma.ac.idkhairina.blog.uma.ac.id/wp-content/uploads/sites/394/2018/11/set-instruksi-Sukarno...yOperation code (Op code) ... ySource Operand reference](https://reader031.vdocuments.net/reader031/viewer/2022012318/5ce9416288c993c0208d0c93/html5/thumbnails/10.jpg)
3. JENIS – JENIS INSTRUKSI
Contoh suatu ekspresi bilangan :p gX = X + Y ;X dan Y berkorespondensi dengan lokasi 210 dan 211.
P t d l b h ti k t ti i t b tPernyataan dalam bahasa tingkat tinggi tersebutmengintruksikan komputer untuk melakukan langkah berikut ini :
Muatkan sebuah register dengan isi lokasi memori210.Tambahkan isi lokasi memori 211 ke registerTambahkan isi lokasi memori 211 ke register.Simpan isi register ke lokasi memori 210
![Page 11: 3 Set Instruksi - khairina.blog.uma.ac.idkhairina.blog.uma.ac.id/wp-content/uploads/sites/394/2018/11/set-instruksi-Sukarno...yOperation code (Op code) ... ySource Operand reference](https://reader031.vdocuments.net/reader031/viewer/2022012318/5ce9416288c993c0208d0c93/html5/thumbnails/11.jpg)
KORELASI
Terlihat hubungan antara ekspresi bahasag ptingkat tinggi dengan bahasa mesin.Dalam bahasa tingkat tinggi, operasi dinyatakand l b t k lj b i k t kdalam bentuk aljabar singkat menggunakanvariabel.Dalam behasa mesin hal tersebut diekpresikanDalam behasa mesin hal tersebut diekpresikandalam operasi perpindahan antar register
![Page 12: 3 Set Instruksi - khairina.blog.uma.ac.idkhairina.blog.uma.ac.id/wp-content/uploads/sites/394/2018/11/set-instruksi-Sukarno...yOperation code (Op code) ... ySource Operand reference](https://reader031.vdocuments.net/reader031/viewer/2022012318/5ce9416288c993c0208d0c93/html5/thumbnails/12.jpg)
Dapat ditarik kesimpulan bahwa instruksi –p pinstruksi mesin harus mampu mengolah data sebagai implementasi keinginan – keinginankita.Terdapat kumpulan unik set instruksi, yang dapat digolongkan dalam jenis– jenisnya, yaitu
Pengolahan data (data procesing)Pengolahan data (data procesing),Meliputi operasi – operasi aritmetika dan logika. Operasi aritmetika memiliki kemampuan komputasiuntuk pengolahan data numerik. Sedangkanuntuk pengolahan data numerik. Sedangkaninstruksi logika beroperasi terhadap bit – bit word sebagai bit, bukannya sebagai bilangan, sehinggainstruksi ini memiliki kemampuan untuk
pengolahan data lain
![Page 13: 3 Set Instruksi - khairina.blog.uma.ac.idkhairina.blog.uma.ac.id/wp-content/uploads/sites/394/2018/11/set-instruksi-Sukarno...yOperation code (Op code) ... ySource Operand reference](https://reader031.vdocuments.net/reader031/viewer/2022012318/5ce9416288c993c0208d0c93/html5/thumbnails/13.jpg)
Perpindahan data (data movement),Berisi instruksi perpindahan data antar register maupunmodul I/O. Untuk dapat diolah oleh CPU maka diperlukaninstruksi - instruksi yang bertugas memindahkan data
d di l koperand yang diperlukanPenyimpanan data (data storage),Berisi instuksi – instruksi penyimpanan ke memori. I k i i i d l iInstuksi penyimpanan sangat penting dalam operasikomputasi, karena data tersebut akan digunakan untukoperasi berikutnya, minimal untuk ditampilkan pada layarharus diadakan penyimpanan walaupun sementaraharus diadakan penyimpanan walaupun sementaraKontrol aliran program (program flow control), berisiinstruksi pengontrolan operasi dan pencabangan. Instruksiini berguna untuk pengontrolan status danini berguna untuk pengontrolan status danmengoperasikan pencabangan ke set instruksi lain
![Page 14: 3 Set Instruksi - khairina.blog.uma.ac.idkhairina.blog.uma.ac.id/wp-content/uploads/sites/394/2018/11/set-instruksi-Sukarno...yOperation code (Op code) ... ySource Operand reference](https://reader031.vdocuments.net/reader031/viewer/2022012318/5ce9416288c993c0208d0c93/html5/thumbnails/14.jpg)
4. JUMLAH ALAMAT
Jumlah register atau alamat yang digunakang y g gdalam operasi CPU tergantung format operasimasing – masing CPU.Ad f t i k 3 2 1 Ada format operasi yang menggunakan 3, 2, 1 dan 0 register.Umumnya yang digunakan adalah 2 register Umumnya yang digunakan adalah 2 register dalam suatu operasi. Desain CPU saat ini telah menggunakan 3 alamat dalam suatu operasi, terutama dalam MIPS (milion instruction per terutama dalam MIPS (milion instruction per secon).
![Page 15: 3 Set Instruksi - khairina.blog.uma.ac.idkhairina.blog.uma.ac.id/wp-content/uploads/sites/394/2018/11/set-instruksi-Sukarno...yOperation code (Op code) ... ySource Operand reference](https://reader031.vdocuments.net/reader031/viewer/2022012318/5ce9416288c993c0208d0c93/html5/thumbnails/15.jpg)
Alamat per instruksi yang lebih sedikit akanp y gmembuat instruksi lebih sederhana dan pendek, tetapi lebih sulit mengimplementasikan fungsi –fungsi yang kita inginkan.g y g gKarena instruksi CPU sederhana maka rancanganCPU juga lebih sederhana.J l h bit d f i i t k i l bih dikitJumlah bit dan referensi per instruksi lebih sedikitsehingga fetch dan eksekusi lebih cepat.Jumlah instruksi per program biasanya jauh lebihbanyakPada jumlah alamat per instruksi banyak, jumlah bit dan referensi instruksi lebih banyak sehingga waktudan referensi instruksi lebih banyak sehingga waktueksekusi lebih lama.
![Page 16: 3 Set Instruksi - khairina.blog.uma.ac.idkhairina.blog.uma.ac.id/wp-content/uploads/sites/394/2018/11/set-instruksi-Sukarno...yOperation code (Op code) ... ySource Operand reference](https://reader031.vdocuments.net/reader031/viewer/2022012318/5ce9416288c993c0208d0c93/html5/thumbnails/16.jpg)
Diperlukan register CPU yang banyak, namunp g y g y ,operasi antar register lebih cepat.Lebih mudah mengimplementasikan fungsi –f i kit i i kfungsi yang kita inginkan.Jumlah instruksi per program jauh lebih sedikit. Untuk lebih jelas perhatikan contoh instruksiUntuk lebih jelas perhatikan contoh instruksi –instruksi dengan jumlah register berbeda untukmenyelesaikan persoalan yang sama
![Page 17: 3 Set Instruksi - khairina.blog.uma.ac.idkhairina.blog.uma.ac.id/wp-content/uploads/sites/394/2018/11/set-instruksi-Sukarno...yOperation code (Op code) ... ySource Operand reference](https://reader031.vdocuments.net/reader031/viewer/2022012318/5ce9416288c993c0208d0c93/html5/thumbnails/17.jpg)
Contoh penggunaan set instruksi dengan alamat p gg g1, 2, dan 3 untuk menyelesaikan operasihitungan :Y (A B) (C + D* E)Y = (A – B) ÷ (C + D* E)
![Page 18: 3 Set Instruksi - khairina.blog.uma.ac.idkhairina.blog.uma.ac.id/wp-content/uploads/sites/394/2018/11/set-instruksi-Sukarno...yOperation code (Op code) ... ySource Operand reference](https://reader031.vdocuments.net/reader031/viewer/2022012318/5ce9416288c993c0208d0c93/html5/thumbnails/18.jpg)
CONTOH INSTRUKSI 2 DAN 3 ALAMAT
Instruksi 3 alamat :
Instruksi 2 alamat :
![Page 19: 3 Set Instruksi - khairina.blog.uma.ac.idkhairina.blog.uma.ac.id/wp-content/uploads/sites/394/2018/11/set-instruksi-Sukarno...yOperation code (Op code) ... ySource Operand reference](https://reader031.vdocuments.net/reader031/viewer/2022012318/5ce9416288c993c0208d0c93/html5/thumbnails/19.jpg)
Instruksi 1 alamat :
![Page 20: 3 Set Instruksi - khairina.blog.uma.ac.idkhairina.blog.uma.ac.id/wp-content/uploads/sites/394/2018/11/set-instruksi-Sukarno...yOperation code (Op code) ... ySource Operand reference](https://reader031.vdocuments.net/reader031/viewer/2022012318/5ce9416288c993c0208d0c93/html5/thumbnails/20.jpg)
Spesifikasi instruksi 3 alamat :pSimbolik : a = b + c.Format alamat : hasil, operand 1, operand 2Digunakan dalam arsitektur MIPS.Memerlukan word panjang dalam suatui t k iinstruksi.
![Page 21: 3 Set Instruksi - khairina.blog.uma.ac.idkhairina.blog.uma.ac.id/wp-content/uploads/sites/394/2018/11/set-instruksi-Sukarno...yOperation code (Op code) ... ySource Operand reference](https://reader031.vdocuments.net/reader031/viewer/2022012318/5ce9416288c993c0208d0c93/html5/thumbnails/21.jpg)
Spesifikasi instruksi 2 alamat :pSimbolik : a = a + b.Satu alamat diisi operand terlebih dahulu kemudian digunakan untuk menyimpanhasilnya.Tidak memerlukan instruksi yang panjangTidak memerlukan instruksi yang panjang.Jumlah instruksi per program akan lebih banyakdaripada 3 alamat.Diperlukan penyimpanan sementara untukmenyimpan hasil.
![Page 22: 3 Set Instruksi - khairina.blog.uma.ac.idkhairina.blog.uma.ac.id/wp-content/uploads/sites/394/2018/11/set-instruksi-Sukarno...yOperation code (Op code) ... ySource Operand reference](https://reader031.vdocuments.net/reader031/viewer/2022012318/5ce9416288c993c0208d0c93/html5/thumbnails/22.jpg)
Spesifikasi instruksi 1 alamat :pMemerlukan alamat implisit untuk operasi.Menggunakan register akumulator (AC) dandigunakan pada mesin lama.
S ifik i i t k i 0 l tSpesifikasi instruksi 0 alamat :Seluruh alamat yang digunakan implisit.Digunakan pada organisasi memori terutama Digunakan pada organisasi memori, terutama operasi stack
![Page 23: 3 Set Instruksi - khairina.blog.uma.ac.idkhairina.blog.uma.ac.id/wp-content/uploads/sites/394/2018/11/set-instruksi-Sukarno...yOperation code (Op code) ... ySource Operand reference](https://reader031.vdocuments.net/reader031/viewer/2022012318/5ce9416288c993c0208d0c93/html5/thumbnails/23.jpg)
5. RANCANGAN SET INSTRUKSI
Aspek paling menarik dalam arsitekturp p gkomputer adalah perancangan set instruksi, karena rancangan ini berpengaruh banyak padaaspek lainnyaaspek lainnya.Set instruksi menentukan banyak fungsi yang harus dilakukan CPU.Set instruksi merupakan alat bagi parapemrogram untuk mengontrol kerja CPU.P i b K b h j diPertimbangan : Kebutuhan pemrogram menjadibahan pertimbangan dalam merancang set instruksi
![Page 24: 3 Set Instruksi - khairina.blog.uma.ac.idkhairina.blog.uma.ac.id/wp-content/uploads/sites/394/2018/11/set-instruksi-Sukarno...yOperation code (Op code) ... ySource Operand reference](https://reader031.vdocuments.net/reader031/viewer/2022012318/5ce9416288c993c0208d0c93/html5/thumbnails/24.jpg)
MASALAH RANCANGAN YANG FUNDAMENTAL MELIPUTI :
Operation repertoire :Berapa banyak dan operasi – operasi apa yang harustersediaSekompleks apakah operasi itu seharusnya
Data types :Data types :Jenis dataFormat data
Instruction formatInstruction formatPanjang instruksi,Jumlah alamat,Ukuran field
RegistersJumlah register CPU yang dapat direferensikan olehinstruksi, dan fungsinya
Add iAddressingmode untuk menspesifikasi alamat suatu operand
![Page 25: 3 Set Instruksi - khairina.blog.uma.ac.idkhairina.blog.uma.ac.id/wp-content/uploads/sites/394/2018/11/set-instruksi-Sukarno...yOperation code (Op code) ... ySource Operand reference](https://reader031.vdocuments.net/reader031/viewer/2022012318/5ce9416288c993c0208d0c93/html5/thumbnails/25.jpg)
TIPE OPERASI
Dalam perancangan arsitektur komputer, jumlahp g p , jkode operasi akan sangat berbeda untuk masing– masing komputer, tetapi terdapat kemiripandalam jenis operasinyadalam jenis operasinya
![Page 26: 3 Set Instruksi - khairina.blog.uma.ac.idkhairina.blog.uma.ac.id/wp-content/uploads/sites/394/2018/11/set-instruksi-Sukarno...yOperation code (Op code) ... ySource Operand reference](https://reader031.vdocuments.net/reader031/viewer/2022012318/5ce9416288c993c0208d0c93/html5/thumbnails/26.jpg)
JENIS OPERASI KOMPUTER
Transfer data. – KonversiAritmetika. - input/OutputLogika. - Kontrol sistem dan transfer kontrol
![Page 27: 3 Set Instruksi - khairina.blog.uma.ac.idkhairina.blog.uma.ac.id/wp-content/uploads/sites/394/2018/11/set-instruksi-Sukarno...yOperation code (Op code) ... ySource Operand reference](https://reader031.vdocuments.net/reader031/viewer/2022012318/5ce9416288c993c0208d0c93/html5/thumbnails/27.jpg)
OPERASI SET INSTRUKSI SECARA UMUM
![Page 28: 3 Set Instruksi - khairina.blog.uma.ac.idkhairina.blog.uma.ac.id/wp-content/uploads/sites/394/2018/11/set-instruksi-Sukarno...yOperation code (Op code) ... ySource Operand reference](https://reader031.vdocuments.net/reader031/viewer/2022012318/5ce9416288c993c0208d0c93/html5/thumbnails/28.jpg)
…LANJ…
![Page 29: 3 Set Instruksi - khairina.blog.uma.ac.idkhairina.blog.uma.ac.id/wp-content/uploads/sites/394/2018/11/set-instruksi-Sukarno...yOperation code (Op code) ... ySource Operand reference](https://reader031.vdocuments.net/reader031/viewer/2022012318/5ce9416288c993c0208d0c93/html5/thumbnails/29.jpg)
…LANJT…
![Page 30: 3 Set Instruksi - khairina.blog.uma.ac.idkhairina.blog.uma.ac.id/wp-content/uploads/sites/394/2018/11/set-instruksi-Sukarno...yOperation code (Op code) ... ySource Operand reference](https://reader031.vdocuments.net/reader031/viewer/2022012318/5ce9416288c993c0208d0c93/html5/thumbnails/30.jpg)
…LANJT…
![Page 31: 3 Set Instruksi - khairina.blog.uma.ac.idkhairina.blog.uma.ac.id/wp-content/uploads/sites/394/2018/11/set-instruksi-Sukarno...yOperation code (Op code) ... ySource Operand reference](https://reader031.vdocuments.net/reader031/viewer/2022012318/5ce9416288c993c0208d0c93/html5/thumbnails/31.jpg)
…LANJT…
![Page 32: 3 Set Instruksi - khairina.blog.uma.ac.idkhairina.blog.uma.ac.id/wp-content/uploads/sites/394/2018/11/set-instruksi-Sukarno...yOperation code (Op code) ... ySource Operand reference](https://reader031.vdocuments.net/reader031/viewer/2022012318/5ce9416288c993c0208d0c93/html5/thumbnails/32.jpg)
…LANJT…
![Page 33: 3 Set Instruksi - khairina.blog.uma.ac.idkhairina.blog.uma.ac.id/wp-content/uploads/sites/394/2018/11/set-instruksi-Sukarno...yOperation code (Op code) ... ySource Operand reference](https://reader031.vdocuments.net/reader031/viewer/2022012318/5ce9416288c993c0208d0c93/html5/thumbnails/33.jpg)
TRANSFER DATA
Instruksi tranfer data harus menetapkan :Lokasi operand sumberLokasi operand tujuanPanjang data yang akan dipindahkanMode pengalamatannya
Apabila sebuah atau kedua operand berada di dalammemori, maka CPU harus melakukan sebagian atau seluruh tindakan berikut :1. Menghitung alamat memori, yang didasarkan pada mode
alamatnya.A bil l t d i t l i h2. 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 modul 4. Bila di cache tidak ada, dikeluarkan perintah ke modul
memori
![Page 34: 3 Set Instruksi - khairina.blog.uma.ac.idkhairina.blog.uma.ac.id/wp-content/uploads/sites/394/2018/11/set-instruksi-Sukarno...yOperation code (Op code) ... ySource Operand reference](https://reader031.vdocuments.net/reader031/viewer/2022012318/5ce9416288c993c0208d0c93/html5/thumbnails/34.jpg)
……