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