LOKASI DAN OPERASI MEMORI 07 Mar21 1 Lokasi
- Slides: 28
LOKASI DAN OPERASI MEMORI 07 -Mar-21 1
Lokasi Memori Main memory berisi jutaan Storage Cell (sel penyimpan). Umumnya sel-sel ini diorganisasikan dalam 8 sampai 64 bit. Memory mempunyai alamat 0 s/d M-1, dimana M adalah jumlah baris Word dari memori. Pada memory ini disimpan item-item pemrosessan yang berupa : Ø Perintah Ø Data : - Bilangan - Character 2
Gambar Alamat-alamat Main Memory 0 W 1 1 W 2 : : i Bn-1 b 0 Wi : : 2 k-1 W 2 k 3
q Data Bilangan Data bilangan pada memori disimpan dalam range yang bervariasi antara 8 sampai 32 bit. Jenis data bilangan dibedakan menjadi : üInteger üSign integer üFloating point 32 bit b 31 b 30 ……. . b 1 b 0 Gambar penyimpanan data bilangan di memori 32 bit 4
q Data Character Untuk mengkodekan data character digunakan kode ASCII (American Standart Code for Information Interchange). Untuk satu character dikodekan dalam 8 digit biner. 8 bit ASCII Character Gambar penyimpanan data Character di memori 32 bit 5
q Instruction/Perintah Untuk penyimpanan perintah dalam memory 32 bit, instruksi disimpan dalam 8 bit (operation field). Sedang sisanya digunakan untuk menyimpan operand atau alamat operand. 8 bit Operation field 24 bit Operand / Operand Address Gambar penyimpanan instruksi di memori 32 bit 6
q Penetapan Big-endian dan Little-endian Terdapat dua cara penetapan alamat byte pada word : ü Big-endian : jika alamat byte tinggi digunakan untuk less significant byte (byte paling kanan) dari word tersebut. ü Little-endian : jika alamat byte rendah digunakan untuk less significant byte (byte paling kanan) dari word tersebut. 7
Gambar Pengalamatan byte dan word 8
Penetapan big-endian dan little-endian digunakan pada mesin komersial. Alamat byte 0, 4, 8, …, digunakan sebagai alamat word yang berurutan dalam memori dan merupakan alamat yang digunakan pada saat menetapkan operasi baca dan tulis memori untuk word. 9
Operasi Memori Terdapat dua operasi pada memori yaitu : 1. Load / read / fetch : Memindahkan isi dari sebuah lokasi memory (informasi) yang telah ditentukan addressnya, ke CPU. Isi dari word yang diambil tidak berubah (tetap). Operasi dimulai dengan CPU mengirimkan alamat dari data yang diinginkan ke memori dan meminta agar memori mengirimkan data tersebut (dengan sinyal read). Selanjutnya memory mengirimkan data yang diminta melalui data bus. 10
2. Write ( store ) : Memindahkan sebuah word informasi dari CPU ke sebuah lokasi memory yang telah ditentukan. Prosessor mengirimkan alamat lokasi memori yang diinginkan bersama dengan data yang akan disimpan. Selanjutnya prosessor mengirimkan sinyal write. 11
Instruksi dan Sequencing Instruksi Untuk melaksanakan suatu program (sekumpulan instruksi), ada beberapa langkah fungsional yang dilakukan oleh komputer : 1. Transfer data antara main memory dan CPU. 2. Operasi aritmatika dan logika pada data. 3. Urutan program dan kontrol. 4. I/O transfer. 12
Terdapat beberapa format instruksi yang digunakan oleh komputer diantaranya adalah : q. Format Three Address (instruksi dengan tiga alamat operand) Operation destination, source 1, source 2 Contoh : Add A, B, C A B+C Artinya : Menjumlahkan isi lokasi memori B dan C, kemudian menyimpan hasilnya ke lokasi memori A. 13
q. Format Two Address (instruksi dengan dua alamat operand) Operation source 1/destination, source 2 Contoh : Add A, B A A+B Artinya : Menjumlahkan isi lokasi memori A dan B, kemudian menyimpan hasilnya ke lokasi memori A. 14
q. Format One Address (instruksi dengan satu alamat operand) Operation source Contoh : Add A Acc + A Artinya : Menjumlahkan isi lokasi memori A dengan accumulator. Accumulator adalah register yang ada di dalam prosesor. 15
Straight Line Sequencing Pada dasarnya komputer mengeksekusi perintah-perintah secara sequential. Kita mengasumsikan bahwa word length adalah 32 bit dan memori tersebut byte addressable. Terdapat tiga instruksi yang berada pada lokasi yang berurutan, mulai lokasi i. Tiap instruksi panjangnya 4 byte, maka instruksi kedua dan ketiga mulai pada alamat i+4 dan i+8. Untuk penyederhanaan kita asumsikan alamat memori penuh (32 bit) dapat diakses dalam instruksi word tunggal. 16
Address Begin execution here Gambar urutan instruksi untuk C A+B i Contents Move R 0, A 3 -instruction i+4 Add R 0, B program i+8 Move C, R 0 segment : : A : : B Data for the : : Program C 17
Ketika suatu perintah dieksekusi maka cpu melakukan urutan kerja di bawah ini : 1. Address instruksi pertama ditempatkan pada PC (address i) 2. Prosessor menggunakan informasi pada PC utk mengambil dan meng-eksekusi instruksi tsb. Satu instruksi pada satu waktu, hal ini disebut sebagai straight line sequencing. 3. Ketika suatu instruksi di eksekusi, isi PC di-up date (ditambah dengan 4) untuk menunjukkan instruksi berikutnya. 18
Eksekusi Instruksi Pelaksanaan instruksi terdiri dari dua phase : 1. Instruction Fetch. - Instruksi diambil dari lokasi MM dimana address nya berada di PC. - Instruksi ini dimasukkan ke dalam Instruction Register pada CPU. 19
2. Instruction Execution. - Instruksi yg berada pd IR diperiksa utk menentukan operasi yg harus dilakukan. - Operasi yg ditentukan kemudian dilakukan oleh CPU. Hal ini dapat meliputi mengambil operand dr MM, melakukan operasi arithmetic dan logic, menyimpan suatu hasil ke dlm MM, atau beberapa kombinasi dr operasi dasar tsb 20
Branching Pada kasus tertentu kadang diperlukan eksekusi satu atau beberapa perintah beberapa kali. Misalkan menjumlahkan bilangan yang terdapat pada array : R 0 = R 0 + Numn n = 1, 2, 3, …, x R 0 : Register 0 Numn : Data pada array Kasus diatas dapat diselesaikan dengan melakukan beberapa kali penjumlahan (sebanyak n kali), seperti contoh di bawah ini 21
I Program straight line untuk penjumlahan n bilangan Move Num 1, R 0 i+4 Add Num 2, R 0 i+8 Add Num 3, R 0 : : i + 4 n – 4 Add Numn, R 0 i + 4 n Mov R 0, Sum : : Sum Num 1 Num 2 Numn 22
Penjumlahan bilangan-bilangan pada array di atas dapat dilakukan dengan menggunakan satu instruksi yang dieksekusi berulang-ulang, yang dikenal dengan istilah looping. Looping adalah melompat (branch) kembali ke satu atau beberapa baris perintah sebelumnya. Lihat contoh program di bawah 23
Mov N, R 1 Clear R 0 LOOP Program penjumlahan n bilangan dengan loop Determine address of “Next” number and add “Next” number to R 0 Decrement R 1 Branch > 0 Loop Move R 0, Sum : : SUM N n NUM 1 NUM 2 : : NUMn 24
Ø Pada saat instruksi branch dieksekusi, instruksi tersebut memberikan suatu nilai baru pada PC. Ø CPU mengambil dan meng-eksekusi instruksi pada address baru tsb dan bukannya instruksi pd lokasi setelah instruksi branch dlm urutan address secara sekwensial. Ø Terdapat dua jenis branch yaitu Conditional Branch instruction dan Unconditional Branch instruction. Ø Conditional Branch instruction: hanya jika suatu kondisi yg ditentukan dipenuhi. Jika kondisi tidak dipenuhi, PC di inkremen secara normal dan instruksi berikutnya di fetch dan execute dg urutan address sekwensial. 25
Condition Codes Ø Merupakan kode-kode yang menggambarkan kondisi yang terjadi setelah eksekusi suatu perintah. Ø Kode-kode ini dipergunakan oleh prosesor sebagai referensi untuk eksekusi perintah berikutnya yang memerlukan. Ø Hal ini dilakukan dg menyimpan informasi yg diperlukan ke dlm individual bit, yg sering disebut sbg condition code flags. 26
Ø Pada beberapa processor, flag ini dikelompokkan bersama pd suatu register khusus yg disebut condition code atau status register. Ø Kemungkinan yg lain, instruksi yg mengatur condition flag dapat menentukan bhw satu dr general purpose register digunakan utk menyimpan flag yg sesuai. 27
Empat flag yg umum digunakan: ü N (Negative): Set ke 1 jika hasilnya negatif; jika tidak, di-clear ke 0. ü Z ( Zero): Set ke 1 jika hasilnya 0; jika tidak, di-clear ke 0. ü V (Overflow): Set ke 1 jika terjadi arithmetic overflow; jika tidak, diclear ke 0. ü C (Carry): Set ke 1 jika terjadi carry-out dr operasi; jika tidak, diclear ke 0. 28
- Disk diorganisasi dalam bentuk cincin-cincin konsentris
- Manajemen memori sistem operasi
- Operasi sel memori
- Pengertian konsep set adalah.
- Contoh liabiliti
- Process scheduling solver
- Konsep sistem operasi manajemen operasi
- Fungsi sistem file
- Peralatan penyimpanan data diluar memori utama dan cpu
- Contoh memori eksplisit
- What are the characteristics of virtual memory
- Lokasi pnj
- Layout lokasi usaha
- Ukuran lokasi data
- Teknik menentukan lokasi dan layout
- Memilih lokasi dan merencanakan fasilitas usaha
- Lll adalah
- Contoh memori otobiografis
- Apa karakteristik dari memori virtual
- Contoh soal set instruksi 3 alamat
- Konsep manajemen memori
- Memori menyimpan berbagai bentuk informasi sebagai
- Makalah manajemen memori
- Makalah memori internal
- C++ memory allocation
- Hirarki memori adalah
- Cache memory mengacu pada konsep locality of reference
- Karakter fisik memori internal dibagi menjadi
- Tingkatan satuan memori