1. STACK DAN QUEU
BY:
JUMIATI
092904035
Pendidikan Teknik Informatika &
Komputer
Pendidikan Teknik Elektro
Universitas Negeri Makassar
Powerpoint Templates
Page 1
2. STACK FRAME
• Sekarang amatilah bagaimana stack digunakan dalam contoh pada
Gambar 2.26. Selama eksekusi subroutine, enam lokasi pada puncak
stack berisi entri yang diperlukan oleh subroutine tersebut. Lokasi ini
merupakan ruang kerja privat untuk subroutine, dibuat pada saat
subroutine dimasuki dan dikosongkan pada saat subroutine
mengembalikan kontrol ke calling program. Ruang semacam itu
disebut stack frame. Jika subroutine memerlukan lebih banyak ruang
untuk variabel mernori lokal, maka dapat juga dialokasikan pada stack.
Powerpoint Templates
Page 2
4. SUBROUTINE
• Pada suatu program, seringkali perlu untuk melakukan subtask tertentu
berulangkali pada nilai data yang berbeda. Subtask semacam itu biasanya
disebut subroutine. Misalnya, suatu subroutine dapat mengevaluasi fungsi
sinus atau mensortir suatu list nilai menjadi urutan meningkat atau
menurun. Instruksi Call hanyalah instruksi branch khusus yang melakukan
operasi berikut:
• Menyimpan isi PC dalam link register
• Branch ke alamat target yang ditetapkan oleh instruksi
Instruksi Return adalah instruksi branch khusus yang melakukan operasi
berikut:
• Branch ke alamat yang terdapat dalam link register.
Powerpoint Templates
Page 4
5. SUBROUTINE NESTING DAN STACK
PROSESOR
Praktek pemrograman umum, yang disebut subroutine nesting, adalah
menggunakan satu sub routine untuk memanggil subroutine lain. Dalam
hat ini, return address call yang kedua juga disimpan dalam link register,
menghancurkan isi sebelumnya.
Powerpoint Templates
Page 5
6. PARAMETER PASSING
• Pada saat calling suatu subroutine, suatu program harus menyediakan
parameter ke subroutine, yaitu operand atau alamatnya, yang akan
digunakan dalam komputasi. Selanjutnya, subroutine mengembalikan
parameter lain, dalam hal ini, hasil komputasi tersebut. Pertukaran
informasi antara calling program dan subroutine disebut sebagai
parameter passing. Parameter passing dapat dilakukan dengan beberapa
cara. Parameter tersebut dapat ditempatkan dalam register atau dalam
lokasi memori, sehingga dapat diakses oleh subroutine. Atau alternatif
lainnya, parameter tersebut dapat ditempatkan pada stack prosesor yang
digunakan untuk menyimpan return address
Powerpoint Templates
Page 6
11. INSTRUKSI TAMBAHAN
• Sejauh ini kita telah memperkenalkan instruksi berikut:
Move, Load, Store, Clear, Add, Subtract, Increment, Decrement, Branc
h, Testbit, Compare, Call, dan Return. 13 Instruksi ini, bersama dengan
mode pengalamatan dalam Tabel 2.1, telah memungkinkan kita untuk
menuliskan routine untuk mengilustrasikan operasi memory-mapped
I/O dasar.
Powerpoint Templates
Page 11
12. a. INSTRUKSI LOGIKA
Operasi logika,seperti AND, OR, dan NOT yang diterapkan pada bit
individu, adalah blok bangunan dasar dari sirkuit digital, sebagaimana
dideskripsikan dalam Apendiks A. Juga akan menggunakan instruksi
yang menerapkan operasi ini ke semua bit word atau byte secara
mandiri dan paralel.
b. INSTRUKSI SHIF DAN ROTATE
Terdapat banyak aplikasi yang meminta bit suatu operand di-shift
sejumlah posisi bit tertentu ke kanan atau kiri. Detil bagaimana shift
tersebut dilakukan tergantung pada apakah operand tersebut adalah
bilangan bertanda atau beberapa informasi binary-code yang lebih
umum.
Powerpoint Templates
Page 12
13. b. INSTRUKSI SHIF DAN ROTATE
Terdapat banyak aplikasi yang meminta bit suatu operand di-shift sejumlah
posisi bit tertentu ke kanan atau kiri. Detil bagaimana shift tersebut dilakukan
tergantung pada apakah operand tersebut adalah bilangan bertanda atau
beberapa informasi binary-code yang lebih umum.
Powerpoint Templates
Page 13
14. SHIFT ARITMATIKA
Suatu studi tentang representasi bilangan biner 2’s-complement pada Gambar
2.1 menyatakan bahwa pergeseran posisi bit nomor satu ke kiri setara dengan
mengalikannya dengan 2; dan menggesernya ke kanan setara dengan
membaginya dengan 2.
OPERASI ROTASI
Pada operasi pergeseran, bit yang bergeser di luar operand hilang, kecuali
bit terakhir yang digeser akan disimpan dalam flag Carry C.
Powerpoint Templates
Page 14
15. PROGRAM BYTE-SORTING
Program byte-sorting menggunakan penyortiran straight-selection.
• Program bahasa-C untuk sorting
For (j=n - 1 ; j > 0 ; j = j – 1)
{for (k = j – 1; k >= 0 ; k = k – 1)
{if (LIST [k] > LIST [j]
{ TEMP = LIST [k];
LIST[k] = LIST [j];
LIST[j] = TEMP;
}
}
}
Powerpoint Templates
Page 15
16. LINKED LIST
• Banyak program aplikasi nonnumerik mensyaratkan bahwa list
informasi yang berurutan direpresentasikan dan disimpan
dengan suatu cara srhingga mudah untuk menambahkan item ke
list tersebut atau untuk menhapus item dari list pada posisi
apapun dengan tetap menjaga urutan item yang diinginkan
Powerpoint Templates
Page 16
17. ENCODING INSTRUKSI MESIN
• Kita telah memperhatikan instruksi yang menjalankan operasi
seperti
penambahan, pengurangan, pemindahan, pergeseran, rotasi, da
n branch. Instruksi ini dapat menggunkana operand dengan
ukuran yang berbeda, seperti 32-bit dan 8-bit bilangan atau
karakter 8-bit ASCII-encoded. Tipe operasi yang dilakukan dan
tipe operand yang digunakan dapat ditentukan menggunakan
pola biner ter-encode yang disebut sebagai OP code untuk
instruksi tertentu.
Powerpoint Templates
Page 17