BAHASA MESIN PDE - bahasa mesin 1 z Instruksi dalam bahasa mesin berada dalam bentuk kode biner yg disebut KODE MESIN / INSTRUKSI MESIN. z Set instruksi mesin yg dapat dijalankan oleh suatu komputer disebut SET INSTRUKSI z Ukuran set instruksi akan mempengaruhi z Biaya mesin z kecepatan dan efisiensi z Pilihan ukuran word dan format instruksi PDE - bahasa mesin 2 z Format instruksi ukuran dan pengaturan komponen, dimana komponen utama adalah kode fungsi (op code) dan menentukan fungsi atau operasi yg dijalankan, dan alamat operand yg menentukan lokasi dari operand yg digunakan z Format alamat bagian dari format instruksi yg mengurus penentuan alamat operand z Format tiga alamat menetapkan alamat dua operand dan memberikan alamat selanjutnya utk hasil operasi itu Fungsi Alamat Alamat PDE - bahasa mesin alamat 3 z Format dua alamat menentukan alamat dari dua operand, hasil dari suatu operasi penambahan akan mengganti salah satu dari dua operand tersebut Fungsi z Alamat Alamat Format alamat satu setengah satu operand disangga dalam register atau akumulator khusus yanng sebelumnya telah dijemput dan ditempatkan disana Fungsi Alamat atau Fungsi AC Alamat AC = nomor akumulator PDE - bahasa mesin 4 z Antar operasi – operasi akumulator format satu dan setengah alamat dapat digunakan utk menjepit atau memuatkan operand ke dalam akumulator dari penyimpanan utama, namun setelah itu instruksi tersebut hanya dapat menentukan dua atau tiga akumulator yg akan digunakan utk operand dan hasilnya Fungsi AC AC PDE - bahasa mesin 5 Jenis Instruksi z Operasi aritmatika dan logika instruksi yg menggunakan ALU z Operasi aritmatika z Penambahan,pengurangan,perkalian dan pembagian z Operasi inkremen dan dekremen (penambahan, pengurangan) z Negasi dan komplemensi z Shift aritmatika z Operasi logika z Operasi boolean (AND, OR) z Negasi boolean (NOT) z Rotasi (shift logis), memindahkan bit ke kiri atau ke kanan, namun mengganti tiap bit yg ada di ujung sebelah satunya dari register tersebut. PDE - bahasa mesin 6 Contoh shift aritmatika a. Shift aritmatika satu tempat ke kiri BEFORE AFTER 0 0 0 1 +1 0 0 1 0 +2 1 1 1 1 -1 1 1 1 0 -2 b. Shift aritmatika satu tempat ke kanan BEFORE AFTER 0 0 1 0 +2 0 0 0 1 +1 1 1 1 0 -2 1 1 1 1 -1 PDE - bahasa mesin 7 Contoh shift logis a. Shift logis (dengan rotasi) satu tempat ke kiri BEFORE 1 0 1 1 AFTER 0 1 1 1 b. Shift logis (dengan rotasi) satu tempat ke kanan BEFORE 1 0 1 1 AFTER 1 1 0 1 c. Shift logis (tanpa rotasi) satu tempat ke kiri BEFORE 1 0 1 1 AFTER 0 1 1 0 d. Shift logis (tanpa rotasi) satu tempat ke kanan BEFORE 1 0 1 1 AFTER 0 1 0 1 PDE - bahasa mesin 8 z Swap mengubah setengah dari word bagian kanan dan sebelah kiri z Instruksi transfer kontrol / cabang instruksi yg mengubah rangkaian yg dianut oleh instruksi. eksekusinya menyebabkan jump (lompatan) ke instruksi yg lain z Instruksi jump terdiri dari : z z z Transfer kontrol tak kondisional, jump selalu terjadi Transfer kontrol kondisional. Jump hanya akan terjadi jika hasil dari suatu operasi mempunyai nilai tertentu. Instruksi pemuatan /penjemputan dan penyimpanan menyebabkan terjadinya transfer data antara akumulator dan memory PDE - bahasa mesin 9 z Instruksi Input Output mengimplementasikan transfer data antara peripheral dan memory, atau antara peripheral dan akumulator z Instruksi referensi memory operasi yg memerlukan akses ke memory selama eksekusinya, karenanya mencakup instruksi load dan store (pemuatan dan penyimpanan) z Instruksi referensi prosesor Instruksi yg tidak memerlukan memory dan tidak melibatkan penginputan dan pengoutputan PDE - bahasa mesin 10 BAGAIMANA INSTRUKSI DIPATUHI z Menjemput instruksi yg diperlukan z z z z MAR dimuatkan dengan alamat instruksi yg akan dijalankan Kontrol SCR kemudian dinaikkan sebesar 1, hingga siap utk penjemputan berikutnya Penjemputan diselesaikan dengan memuatkan instruksi ke dalam CIR melalui MDR Mengeksekusi Operasi z Opcode atau bagian fungsi dari instruksi di dekode oleh unit kontrol PDE - bahasa mesin 11 BAHASA MESIN IMAGINER z Alat bantu bagi programmer z z z z z Kode simbolik dan MNEMONIC Kode biner dapat dikonversi ke oktal atau heksadesimal Program khusus yg disebut assembler, dimana akan mengkonversi program dalam bentuk simbolis dan mnemonic menjadi kode mesin. Program mnemonic dan simbolis disebut program sumber kode mesin yg dihasilkan assembler disebut program obyek PDE - bahasa mesin 12 METODE PENGALAMATAN METODE PENGALAMATAN UTAMA z Pengalamatan langsung (direct addressing) digunakan jika bilangan yg diberikan dalam bagian operand suatu instruksi adalah alamat sebenarnya dari operand yg akan digunakan. Pengalamatan langsung bersifat sederhana, cepat dan efektif namun jumlah lokasi yg bisa dialamati terbatas z Pengalamatan tak langsung (deffered addressing) bila pengalamatan langsung digunakan yg diberikan dalam bagian alamat suatu instruksi bukan alamat operand dari operand yg diperlukan. Bagian alamat dari lokasi yg berisi alamat yg diperlukan. Suatu alamat dapat langsung atau tidak langsung PDE - bahasa mesin 13 z Pengalamatan terindeks alamat yg diperlukan diperoleh dengan menambahkan isi bagian alamat instruksi ke bilangan yg disimpan dalam register khusus yg disebut register indeks atau register modifier z Pengalamatan termodifikasi jika suatu instruksi dimodifikasi hingga satu fungsi yg sama dijalankan berulang-ulang pada suatu operand dalam alamat yg berbeda, maka disebut menggunakan alamat termodifikasi. Metode yg digunakan : 1. menggunakan pengalamatan terindeks dan mengubah isi register indeks sebelum instruksi diulang 2. mengubah bagian alamat instruksi PDE - bahasa mesin 14 z Pengalamatan relatif bagian alamat dari instruksi digunakan utk memberikan displacement dari beberapa alamat yg dinyatakan. Di satu sisi alamat indeks akan menjadi alamat relatif sebab bagian alamat instruksi memberikan lokasi operand agar banyak tempat melewati lokasi yg dinyatakan dalam register indeks. alamat base : alamat yg menjadi referensi alamat relatif z Pengalamatan page digunakan bila panjang word membatasi ukuran field alamat. Bentuk khusus dari pengalamatan relatif. Area penyimpan utama dibagi menjadi unit-unit (page) berukuran sama dan dinomori 0,1,2,3,…. PDE - bahasa mesin 15 z Pengalamatan immediate jika kita tidak memberikan lokasi data dalam bagian alamat dari instruksi, maka dikatakan menggunakan pengelamatan immediate, yakni bagian alamat digunakan sebagai operand z Pengalamatan simbolis pengalamatan simbolis tidak mungkin dalam kode mesin, namun digunakan programmer ketika menggunakan simbol alfa-numerik utk menetapkan suatu alamat PDE - bahasa mesin 16 FASILITAS LAIN DARI MESIN IMAJINER z Register Status mempunyai isi sendiri yg di set oleh perangkat hardware seperti ALU dan digunakan oleh unit kontrol z Pointer Stack menyangga alamat dari suatu lokasi dalam memory dimana data dapat ditempatkan secara sementara. Data ini terorganisasi dan diakses dalam struktur data yg disebut STACK. dalam hal ini dikenal istilah PUSH (item dimasukkan ke stack) dan POP (item dikeluarkan dari stack) 3 penggunaan pokok stack pada tingkat mesin : 1. digunakan dalam komputasi sederhana utk menyangga hasilhasil intermediate 2. menangani call subprogram 3. menangani interrupt PDE - bahasa mesin 17 MEMUAT & MENYIMPAN PROGRAM DALAM KODE MESIN z Loader akan mengambil program yg ditulis dalam kode mesin dan dalam bentuk input yg sesuai. Loader biasanya secara permanen ada dalam memory utama z Informasi mengenai prosesor dapat ditampilkan pada panel khusus yg disebut CONSOLE z Loader bootstrap (bootstrap) adalah loader yg sangat sederhana yg mungkin ditempatkan dalam memory secara manual dengan menggunakan console atau ditempatkan dalam memory dengan bagian hardware khusus z Alamat absolut adalah alamat yg ditentukan oleh hardware z Program absolut adalah program yg selalu dimuatkan ke lokasi fixed yg sama dalam lokasi-lokasi yg berbeda dalam penyimpanan utama yg menjadi pedoman diketahuinya alamat absolut z Program relocable adalah program yg dimuatkan ke dalam lokasi-lokasi yg berbeda dalam penyimpanan utama tiap kali 18 PDE - bahasa mesin dijalankan