10 Set Intruksi Karakteristik dan Fungsi By Serdiwansyah
10. Set Intruksi : Karakteristik dan Fungsi By Serdiwansyah N. A.
Set Instruksi § Set Instruksi : o Kumpulan instruksi lengkap yang dimengerti oleh CPU o Kode mesin, Biner, dan Kode Assembly § Elemen Instruksi : § Operation code (Op code) o Kerjakan § Source Operand reference o Dengan data ini § Result Operand reference o Simpan hasilnya kesini § Next Instruction Reference o Setelah selesai, kerjakan ini. . . Set Intruksi 2
Operand dan Penyajian Instruksi § Operand : o Main memory (or virtual memory or cache) o CPU register o I/O device § Penyajian Instruksi : § Dlm kode mesin setiap instruksi memiliki pola-bit tertentu. § Untuk konsumsi programmers disediakan penyajian simbolik. o Contoh: ADD, SUB, LOAD § Operand juga disajikan secara simbolik. o Contoh: ADD A, B Set Intruksi 3
Jenis Instruksi § Data processing § Data storage (main memory) § Data movement (I/O) § Program flow control Set Intruksi 4
Jumlah Addres (a) § 3 addres § Operand 1, Operand 2, Result o Contoh: ADD A, B, C o a = b + c; § Jarang digunakan dan perlu word yang panjang. § 2 addres § Salah satu sebagai operand dan result o Contoh: ADD A, B o a=a+b § Instruksi lebih pendek § Diperlukan kerja ekstra o Temporary storage untuk menyimpan beberapa hasil operasi Set Intruksi 5
Jumlah Addres (b) § 1 addres o Addres kedua Implicit o Biasanya register (accumulator) § 0 (zero) addres § semua addres implicit § menggunakan stack o Contoh: push a push b Add pop c o Berarti: c = a + b Set Intruksi 6
Addres Banyak dan Sedikit § Addres banyak o Instruksi semakin kompleks o perlu register banyak o Program lebih pendek o Lebih cepat ? § Addres sedikit o Instruksi lebih sederhana o Eksekusi lebih cepat Set Intruksi 7
Pertimbangan Perancangan § Operation o Berapa banyak operand? Apa saja operasi yang dikerjakan? Seberapa komplekx? § Jenis data § Format instruksi o Panjang opcode o Jumlah addres § Register o Jumlah register yang tersedia dlm CPU o Operasi apa yg dpt dikerjakan oleh masing-masing registers? § Addressing modes (…) § RISC v CISC Set Intruksi 8
Jenis Operand § Addres § Number o Integer/floating point § Character o ASCII etc. § Logical Data o Bits or flags § (Apa ada bedanya antara number dengan character? ) Set Intruksi 9
Tipe Data Pentium § § § 8 bit Byte 16 bit word 32 bit double word 64 bit quad word Addressing menggunakan 8 bit unit 32 bit double word dibaca pada addres yg habis dibagi dg 4 Set Intruksi 10
Tipe Data Spesifik § § § § § General – sembarang isi biner Integer - single binary value Ordinal - unsigned integer Unpacked BCD - One digit per byte Packed BCD - 2 BCD digits per byte Near Pointer - 32 bit offset within segment Bit field Byte String Floating Point Set Intruksi 11
Jenis Operasi § § § § Data Transfer Arithmetic Logical Conversion I/O System Control Transfer of Control Set Intruksi 12
Data Transfer § Menentukan : o Source o Destination o Jumlah data § Beda instruksi untuk setiap data movement yang beda. o pada IBM 370 § Atau satu instruction dengan addres yg beda. o pada VAX Set Intruksi 13
Arithmetic § § Add, Subtract, Multiply, Divide Signed Integer Floating point ? Termasuk operasi: o Increment (a++) o Decrement (a--) o Negate (-a) Set Intruksi 14
Logical dan Konversi § Logika : o Bitwise operations o AND, OR, NOT § Konversi o Contoh: Biner ke Decimal Set Intruksi 15
Input Output § Tersedia instruksi khusus. § Atau digunakan instruksi data movement (memory mapped). § Atau dikerjakan oleh controller (DMA). Set Intruksi 16
System Control dan Transfer of Control § System Control : § Privileged instructions § CPU harus berada pada state tertentu o Ring 0 pada 80386+ Kernel mode § Digunakan oleh operating systems § Transfer of Control : § Branch , contoh: branch to x if result is zero § Skip, contoh: increment and skip if zero o ISZ Register 1 o Branch xxxx o ADD A § Subroutine call o interrupt call Set Intruksi 17
Byte Order § Bagaiamana urutan bilangan yang lebih dari 1 byte disimpan/dibaca, contoh (dalam hex). § Bilangan 12345678 dapat disimpan pada lokasi 4 x 8 bit. § Contoh : Address Value (1) Value(2) 184 12 78 185 34 56 186 56 34 186 78 12 § top down atau bottom up? Set Intruksi 18
Penamaan Byte Order § § § Problem ordering dinamakan Endian LSB pada posisi paling kiri (pada addres terkecil) Dinamakan big-endian LSB pada posisi paling kanan (pada addres terbesar) Dinamakan little-endian Set Intruksi 19
Standard § Pentium (80 x 86), VAX adalah little-endian § IBM 370, Motorola 680 x 0 (Mac), dan RISC yang lain, adalah big-endian § Internet menggunakan big-endian o Membuat program untuk Internet pada PC lebih susah. o Win. Sock menyediakan htoi (Host to Internet) dan itoh (Internet to Host) untuk keperluan konversi Set Intruksi 20
- Slides: 20