tcp/ip dan adress · web viewketika operand terisi dalam register data, bit tanda diperluas ke kiri...

25

Click here to load reader

Upload: dangbao

Post on 24-Jun-2018

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: TCP/IP dan Adress · Web viewKetika operand terisi dalam register data, bit tanda diperluas ke kiri sepenuhnya ukuran word data. Keuntungan pengalamatan segera adalah bahwa tidak

ARSITEKTUR KOMPUTER“Set-set Instruksi: Mode

dan Bentuk Pengalamatan”

Di Susun Oleh :

RINI ANDINI1129040148

PTIK 02

JURUSAN PENDIDIKAN TEKNIK ELEKTROPROGRAM STUDI PTIK

UNIVERSITAS NEGERI MAKASSAR

Page 2: TCP/IP dan Adress · Web viewKetika operand terisi dalam register data, bit tanda diperluas ke kiri sepenuhnya ukuran word data. Keuntungan pengalamatan segera adalah bahwa tidak

2014BAB 11

SET- SET INSTRUKSI: MODE DAN BENTUK PENGALAMATAN

A. Jenis-jenis Pengalamatan

1. Pengalamatan Segera

Bentuk yang paling sederhana dari pengalamatan adalah pengalamatan segera, dimana

operand benar-benar diberikan pada instruksi :

OPERAND = A

Mode ini dapat digunakan untuk mendefinisikan dan menggunakan nilai awal variable

tetap atau yang di-set. Secara umum, bilangan akan disimpan dalam bentuk komplemen dua ;

bit paling kiri bidang operand digunakan sebagai bit tanda. Ketika operand terisi dalam

register data, bit tanda diperluas ke kiri sepenuhnya ukuran word data.

Keuntungan pengalamatan segera adalah bahwa tidak ada acuan memori selain dari

pengambilan instruksi yang diperlukan untuk memperoleh operand, sehingga menghemat

satu memori atau siklus cache dalam siklus instruksi. Kerugiannya adalah bahwa ukuran

bilangannya terbatas pada ukuran bidang alamat, yang mana dalam kebanyakan set instruksi

lebih kecil dibandingkan dengan panjang word.

2. Pengalamatan Langsung

Bentuk pengalamatan yang sangat sederhana adalah pengalamatan langsung, dimana

bidang alamat terdiri dari alamat efektif operand :

EA = A

Teknik ini adalah umum pada generasi awal computer tetapi tidak umum pada

arsitektur kontemporer. Teknik tersebut memerlukan hanya satu acuan memori dan tidak ada

kalkulasi khusus. Pembatasan yang jelas adalah bahwa teknik tersebut memberikan hanya

sebuah ruang alamat terbatas.

3. Pengalamatan Tidak Langsung

Dengan pengalamatan langsung, panjang bidang alamat pada umumnya kurang dari

panjang word, sehingga membatasi cakupan alamat. Penyelesaiannya adalah mempunyai

bidang alamat yang mengacu pada alamat word dalam memori, yang pada gilirannya terdiri

dari sepanjang alamat operand. Pengalamatan ini dikenal sebagai pengalamatan tidak

langsung :

2Set-set Instruksi: Mode dan Bentuk Pengalamatan

Page 3: TCP/IP dan Adress · Web viewKetika operand terisi dalam register data, bit tanda diperluas ke kiri sepenuhnya ukuran word data. Keuntungan pengalamatan segera adalah bahwa tidak

EA = (A)

Seperti pada awal pembahasan, tanda kurung digunakan untuk diinterpretasikan sebagai

arti yang terdiri dari. Keuntungan yang jelas nyata dari pendekatan ini adalah bahwa untuk

panjang word N, suatu ruang alamat 2N kini tersedia. Kerugiannya adalah bahwa eksekusi

instruksi memerlukan dua acuan memori untuk mengambil operand tersebut : satu untuk

mendapatkan alamatnya dan kedua untuk mendapatkan nilainya.

Meskipun jumlah word yang dapat dialamati kini sama dengan 2N, jumlah alamat

efektif berbeda yang dpaat diacu pada senbarang waktu yang dibatasi pada 2K, di mana K

adalah panjang bidang alamat. Secara umum, ini bukanlah pembatasan yang membebani dan

merupakan sebuah asset. Pada lingkungan memori virtual, semua lokasi alamat efektif dapat

terbatas pada halaman 0 sembarang proses. Karena bidang alamat suatu instruksi kecil,

bidang alamat secara alami akan menghasilkan alamat langsung bernomor rendah, yang akan

mucul pada halaman 0. (satu-satunya pembatasan ini adalah bahwa ukuran halaman haus

lebih besar atau sama dengan 2K). Ketika proses aktif, terdapat acuan yang akan diulangi

sampai halaman 0, menyebabkan acuan tersebut untuk tinggal di dalam memori riil. Jai,

acuan memori tidak langsung akan melibatkan, paling banyak satu halaman salah bukannya

dua halaman.

Varian pengalamatan tidak langsung yang jarang digunakan adalah bertingkat-tingkat

atau berlapis. :

EA = (…..(A)……)

Dalam kasus ini, satu bit alamat penuh word adalah bendera tidak langsung (I). jika bit I

sama dengan 0, maka word terdiri dari EA. Jika bit I sama dengan 1, maka dilibatkan tingkat

tidak langsung lainnya. Disana tidak muncul sembarang keuntungan tertentu pada pendekatan

ini, dan kerugiannya adalah bahwa tiga acuan memori lebihx diperlukan untuk mengambil

operand.

4. Pengalamatan Register Tidak Langsung

Seperti halnya pengalamatan register yang dapat dianologkan dengan penglamatan

langsung, pengalamata register tidak lansung dapat disamakan dengan dengan pengalamatan

tidak lansung.

Pada kedua kasus satu-satunya perbedaan adalah apakah bidang alamat mengacu ke

lokasi memori atau register .Jadi, untuk alamat register tidak lansung , EA = (R).

Keuntungan dan pembatasan pengalamatan register tidak lansung pada dasarnya sama

dengan pengalamatan tidak lansung .Pada kedua kasus ,pembatasan ruang alamat (cakupan

3Set-set Instruksi: Mode dan Bentuk Pengalamatan

Page 4: TCP/IP dan Adress · Web viewKetika operand terisi dalam register data, bit tanda diperluas ke kiri sepenuhnya ukuran word data. Keuntungan pengalamatan segera adalah bahwa tidak

alamat terbatas) dari bidang alamat diatasi dengan pemberian bidang itu mengacu pada lokasi

panjang word yang berisi alamat. Sebagai tambahan, register pengalamatan tidak lansung

menggunakan satu lebih sedikit acuan memori dibanding pengalamatan tidak lansung.

5. Pengalamatan Penggantian

Mode pengalamatan yang sangat handal diproleh dengan mengkombinasikan

kemampuan pengalamatan lansung dan register pengalamatan tidak lansung. Hal tersebut

dikenal dengan berbagai macam nama tergantung pada konteks yang digunakannya, tetapi

mekanisme dasarnya adalah sama . Kita akan mengacu pada mekanisme dasar ini sebagai

pengalamatan penggantian :

EA = A + ( R )

Pengalamatan penggantian memerlukan instruksi yang mempunyai dua bidang alamat,

yang salah satunya eksplisit . Nilainya terdiri dari satu bidang alamat (nilai = A) digunakan

secara langsung . Bidang alamat yang lain, atau opcode yang di dasarkan pada acuan implisit,

mengacu pada register yang terdiri dari penambahan ke A untuk menghasilkan alamat efektif.

Kita akan menguraikan tiga penggunaan paling umum terhadap pengalamatan

penggantian :

Pengalamatan relative

Pengalamatan register dasar

Peng-indeks-an

a. Pengalamatan Relatif

Untuk pengalamatan relatif, register di acu secara implisit adalah pencacah

program (Program Counter-PC). Yaitu, alamat instruksi tertentu ditambahkan

kebidang alamat untuk menghasilkan EA. Secara umum, bidang alamat diperlakukan

sebagai bilangan komplemen dan untuk operasi ini. Jadi, alamat efektif merupakan

penggantian relatif dengan alamat instruksi tersebut.

Pengalamatan relatif memanfaatkan konsep lokalitas yang telah dibahas pada

bab 4 dan 8. Jika kebanyakan acuan secara relatif dekat pada instruksi yang

dieksekusi, maka penggunaan pengalamatan relatif menyimpan bit alamat pada

instruksi.

b. Pengalamatan Register Dasar

4Set-set Instruksi: Mode dan Bentuk Pengalamatan

Page 5: TCP/IP dan Adress · Web viewKetika operand terisi dalam register data, bit tanda diperluas ke kiri sepenuhnya ukuran word data. Keuntungan pengalamatan segera adalah bahwa tidak

Untuk pengalamatan register dasar, interpretasinya adalah sebagai berikut :

Register yang diacu berisi alamat memori, dan bidang alamat berisi penggantian (pada

umumnya representasi integer tidak bertanda) dari alamat tersebut. Acuan register

dapat berupa eksplisit atau implisit.

Pengalamatan register dasar juga dapat memanfaatkan lokalitas acuan memori.

Hal ini merupakan alat yang menyenangkan terhadap pengimplementasian

segmentasi, yang telah dibahas pada bab 8. Dalam beberapa implementasi, register

berbasis segmen tunggal dilakukan dan digunakan secara implisit. Di pihak lain,

pemrogram dapat dipilih register untuk menampung alamat dasar segmen, dan

instruksi perlu mengacunya secara eksplisit. Pada kasus yang belakangan, jika

panjang bidang alamat sama dengan K dan jumlah register yang mungkin sama

dengan N, maka satu instruksi dapat mengacu sembarang area N terhadap word 2.

c. Peng-indeks-an

Untuk peng-indeks-an, interpretasinya secara umum sebagai berikut :

Acuan bidang alamat suatu alamat memori utama, dan register yang diacu berisi

penggantian positif dari alamat tersebut. Perlu dicatat bahwa penggunaannya hanya

merupakan kebalikan dari interpretasi untuk pengalamatan register dasar. Tentu saja,

hal itu lebih dari sekedar interpretasi pengguna . Karena bidang alamat dianggap

sebagai alamat memori dalam peng-indeks-an, secara umum terdiri dari lebih banyak

bit dibandung dengan bidang alamat pada instruksi register dasar yang dapat

dibandingkan. Juga kita akan mengetahui bahwa terdapat beberapa perbaikan bagi

peng-indeks-an yang tidak akan bermanfaat pada konteks register dasar. Meskipun

demikian, metode penghitungan EA adalah sama untuk pengalamatan register dasar

dan peng-indeks-an, dan pada kedua kasus acuan register kadang-kadang eksplisit dan

kadang-kadang implisit (untuk jenis CPU yang berbeda).

Penggunaan peng-indeks-an penting adalah memberikan mekanisme yang

efisien untuk pembentukan operasi yang berulang-ulang. Sebagai contoh, perhatikan

register bilangan-bilangan disimpan dengan mulai pada lokasi A. Anggap bahwa kita

bermaksud menambahkan 1 ke masing-masing elemen pada daftar tersebut. Kita

ahrus mengambil nilainya masing-masing, menabahkan 1, dan menyimpannya

kembali. Urutan alamat-alamat efektif yang kita perlukan adalah A,A+1,A+2a,........,

sampai ke lokasi terakhir pada daftar itu. Dengan peng-indeks-an, hal ini dengan

5Set-set Instruksi: Mode dan Bentuk Pengalamatan

Page 6: TCP/IP dan Adress · Web viewKetika operand terisi dalam register data, bit tanda diperluas ke kiri sepenuhnya ukuran word data. Keuntungan pengalamatan segera adalah bahwa tidak

mudah dilakukan. Nilai A disimpan, diinisialisasikan dengan 0. Setelah masing-

masing operasi, register indeks dinaikkan 1.

Karena register indeks biasanya digunakan untuk tugas yang berulang-ulang

seperti itu, maka register indeks secara umum diperlukan untuk menaikkan atau

menurunkan register indeks setelah masing-masing acuannya. Karena hal ini

merupakan operasi umum, beberapa sistem secara otomatis akan melakukan hal ini

sebagai bagian dari siklus instruksi yang sama. Hal ini di kenal sebagai peng-indeks-

an otomatis. Dapat dilibatkan secara implisit dan secara otomatis. Jika register

bertujuan umum digunakan, operasi indeks otomatis dapat diperlukan untuk

disinyalkan oleh bit pada instruksi tersebut. Peng-indeks-an otomatis menggunakan

kenaikan yang dapat dilukiskan sebagai berikut :

EA = A+(R)

(R) ← (R)+1

Pada beberapa mesin. Baik pengalamatan tidak langsung maupun peng-indeks-

an diberikan, dan dimungkinkan untuk melakukan kedua instruksi yang sama.

Terdapat dua kemungkinan: Peng-indeks-an dilakukan sebelum maupun setelah

indirection.

Jika peng-indeks-an dilakukan setelah indirection, maka disebut post peng-indeks-an.

EA = (A)+(R)

Pertama muatan bidang alamat digunakan untuk mengakses lokasi memori yag

terdiri dari alamat langsung. Alamat ini kemudian di-indeks oleh nilai register. Teknik

ini berguna untuk mengakses salah satu dari sejumlah blok data bentuk tertentu.

Sebagai contoh, hal ini telah di uraikan pada bab 8 bahwa sistem operasi diperlukan

untuk melakukan blok kontrol proses bagi masing-masing proses. Operasi yang

dilakukan adalah sama dengan mengabaikan blok yang dimanipulasi. Sehingga alamat

pada perintah yang mengacu blok dapat menujuk lokasi (nilai = A) yang terdiri dari

pointer variabel unutk awal dari blok kontrol proses. Register indeks terdiri dari

penggantian di dalam blok.

6Set-set Instruksi: Mode dan Bentuk Pengalamatan

Page 7: TCP/IP dan Adress · Web viewKetika operand terisi dalam register data, bit tanda diperluas ke kiri sepenuhnya ukuran word data. Keuntungan pengalamatan segera adalah bahwa tidak

Pada preindexing, peng-indeks-an dibentuk sebelum indirection :

EA = (A+(R))

Alamat dikalkulasi seperti halnya pada peng-indeks-an sederhana. Pada kasus

ini, bagaimanapun, alamat yang di kalkulasikan tidak berisi operand, tetapi hanya

alamat operand. Ontoh penggunaan teknik ini adalah untuk membangun banyak cara

tabek cabang. Pada titik tertentu pada program, mungkin terdapat cabang bagi salah

satu dari sejumlah lokasi yang tergantung pada kondisi-kondisi. Tabel alamat dapat

diberikan permulaan lokasi A. Dengan peng-indeks-an ke dalam tabel ini, lokasi yang

diperlukan dapat ditemukan. Secara khusus, set instruksi tidak akan meliputi

keduanya pre peng-indeks-an dan post peng-indeks-an.

6. Pengalamatan Stack

Mode pengalamatan terakhir yang kita pertimbangkan adalah pengalamatan stack.

Seperti yang telah dibahas dalam lampiran 9A ,stack merupakan larik lokasi linier.Stack

kadang-kadang dikenal sebagai daftar pushdown atau antrian last-in-first-out. Stack

merupakan blok lokasi yang dipesan. Materi ditambahkan ke puncak stack sehingga, di setiap

waktu, blok secara persial diisi. Pointer yang nilainya alamat pada puncak stack dihubungkan

dengan stack . Sebagai alternative puncak dua elemen stack dapat berada dalam register CPU,

dalam kasus dimana pointer stack mengacu pada elemen ketiga stack . Pointer stack dirawat

dalam register. Sehingga ,acuan ko lokasi stack dalam memori kenyataannya register alamat

tidak lansung.

Mode pengalamatan stack merupakan bentuk implikasi pengalamatan. Instruksi-

instruksi mesin tidak perlu meliputi acuan memori tetapi secara implisit beroperasi di atas

stack tersebut.

B. Mode-mode Pengalamatan Pentium Dan Power Pc

1. Mode-Mode Pengalamatan

Kembali ke gambar 8.21 bahwa mekanisme terjemahan alamat pentium menghasilkan

sebuah alamat, yang disebut alamat efektif atau alamat virtual, yang merupakan offset

kedalam segmen. Penjumlahan yang dimulai dari alamat segmen dan alamat efektif

menghasilkan alamat linear. Jika pemberian nomor halaman digunakan, alamat linear harus

7Set-set Instruksi: Mode dan Bentuk Pengalamatan

Page 8: TCP/IP dan Adress · Web viewKetika operand terisi dalam register data, bit tanda diperluas ke kiri sepenuhnya ukuran word data. Keuntungan pengalamatan segera adalah bahwa tidak

menerobos mekanisme terjemahan halaman untuk menghasilkan alamat fisik. Pada apa yang

diikutinya., kita mengabaikan langkah terakhir ini., karena langkah tersebut transparan bagi

setinstruksi dan bagi pemrogramnya.

Pentium dilengkapi dengan berbagai macam mode pengalamatan yang diharapkan

memungkinkan dilakukannya eksekusi efisisenterhadap bahasa tingkat tinggi. Gambar 11.2

mengindikasikan adanya logika yang dilibatkan. Register segmen menetukan segmen pokok

acuan. Terdapat 6 register segmen: yang satu digunakan untuk acuan tertentu tergantung pada

konteks eksekusi dan instruksi. Setiap register segmen menampung alamat awal yang

bersesuaian dengan alamat segmen. Yang dihubungkan dengan masing-masing register

segmen terlihat pengguna adalah register desriptor segmen (tidak terlihat oleh

pemprograman) arsip yang diakses cocok untuk segmen seperti halnya alamat awal dan batas

panjang segment itu. Sebagai tambahan, terdapat dua register yang dapat digunakan dalam

membangun alamat; register dasar dan register indeks.

Tabel. 11.2 mendaftar mode pengalamatan pentium 12. Mari kita pertimbangkan

masing-masingnya pada gilirannya. Untuk mode segera, operand dimasukkan dalam

instruksi. Operan dapat berupa bit, word, atau double word data.

Untuk mode operand register, operand terletak pada register. Bagi instruksi-instruksi

umum, seperti perpindahan data, aritmatika, dan perintah logis, operand dapat menjadi salah

satu dari register umum 32bit, salah satu dari register umum 16bit atau salah satu dari register

umum 8bit. Untuk operasi titik mengambang, operand 64 bit dibentuk dengan menggunakan

2 pasang register 32bit. Terdapa t juga beberapa instruksi yang mengacu register segmen.

Lokasi acuan mode pengalamatan sisanya berada dalam memory. Penempatan memory

harus dispesifikasikan dalam kaitannya dengan segmen yang berisi lokasi dan opset dari awal

segmen. Dalam beberapa hal, segmen dispesiofikasikan secara eksplisit; dipihak lain, segmen

dispesiifikasikan oleh aturan sedrhana yang menentukan segmen dengan nilai default.

Pada mode penggantian, opset operand dimasukkan sebagai bagian instruksi sebagai

penggantian 8bit, 16bit, atau 32 bit. Pada segmentasi, semua alamat dalam instruksi selalu

mengacu ke opset pentada segmen. Mode pengalamatan penggantian ditentukan pada sedikit

mesin karena, seprti yang telah disebutkan lebih awal, mode pengalamatan penggantian

mengarahkan keperintah yang panjang. Pada kasus pentium , nilai penggantian dapat menjadi

sepanjang 32 bit, pembuatan instruksi 6-byte. Pengalamatan penggantian dapat bergunauntuk

pengacuan variabel global.

8Set-set Instruksi: Mode dan Bentuk Pengalamatan

Page 9: TCP/IP dan Adress · Web viewKetika operand terisi dalam register data, bit tanda diperluas ke kiri sepenuhnya ukuran word data. Keuntungan pengalamatan segera adalah bahwa tidak

Tabel 11.2 Mode Pengalamatan PENTIUM II

MODE ALGORITMA

Segera Operand = A

Operand register LA = R

Penggantian LA = (SR) + A

Basis LA = (SR) + (B)

Basis dengan penggantian LA = (SR) +(B) + A

Indeks yang terskala dengan penggantian LA = (SR) + (I) x S + A

Basis dengan indeks dan penggantian LA = (SR) + (B) + (I) + A

Basis dengan indeks terskala dan

penggantian

LA = (SR) + (I) x S + (B) + (A)

Relatif LA = (PC) + A

LA= alamat linear

(X)= muatan X

SR= register segmen

PC= penghitung program

A= muatan bidang alamat dalam instruksi

R= register

B= register basis

I= register indeks

S= faktor skala

Mode pengalamatan sisanya adalah tidak langsung, pada pengertian bahwa bagian

alamat instruksi memberitahukan prosesor dimana untuk menemukan alamat. Mode basis

mengspesifikasikan bahwa salah satu register 8bit, 16bit, atau 32 bit terdiri dari alamat

efektif. Hal ini sama dengan apa yang kita dikenal sebagai register pengalamatan tidak

langsung.

Pada basis dengan mode penggantian, instruksi meliputi penggantian untuk

ditambahkan ke register basis. Yang mungkin merupakan sembarang register bertujuan

umum. Contoh kegunaan dari mode ini meliputi hal-hal berikut:

9Set-set Instruksi: Mode dan Bentuk Pengalamatan

Page 10: TCP/IP dan Adress · Web viewKetika operand terisi dalam register data, bit tanda diperluas ke kiri sepenuhnya ukuran word data. Keuntungan pengalamatan segera adalah bahwa tidak

Digunakan oleh kompiler untuk menunjuk awal dari area variabel lokal. Sebagai

contoh, register basis dapat menunjuk permulaan dari bingkai stick; yang terdiri dari

variabel lokal untuk menyesuaikan prosedur.

Indeks digunakan ke dalam larik ketika ukuran elemen bukanlah 1, 2, 4, atau 8 byte

dan yang oleh karena itu tidak bisa diindeks dengan menggunakan register indeks.

Pada kasus ini penggantian menunjuk kepada permulaan larik dan register basis

menampung hasil kalkulasi untuk menentukan offset ke elemen spesifik di dalam

larik.

Digunakan untuk mengakses bidang rekaman. Register basis mengarahkan ke

permulaan rekaman, disamping itu penggantian merupakan offset ke bidang.

Pada indeks berskala dengan mode penggantian, instruksi meliputi penggantian untuk

ditambahkan pada register, dalam hal ini disebut register indeks. Register indeks dapat berupa

sembarang register bertujuan umum kecuali yang disebut ESP, yang digunakan secara umum

untuk memproses stack. Pada perhitungan alamat efektif, isi register indeks merupakan

perkalian dengan factor skala dari 1,2,4, atau 8, dan kemudian menambahnya untuk

penggantian. Mode ini sangan menyenangkan untuk pengindeksian larik. Pengskalaan 2

dapat digunakan untuk larik integer 16 bit. Factor skala 4 dapat digunakan untuk bilangan

integer atau titik mengambang 32 bit. Akhirnya, factor skala 8 dapat digunakan untuk larik

bilangan-bilangan titik mengambang ketepatan ganda.

Basis dengan indeks dan mode penggantian menjumlahkan isis register basis, register

indeks, dan penggantian untuk membentuk alamat efektif. Lagi, register basis dapat berupa

sembarang register bertujuan umun kecuali ESP. Sebagai contoh mode pengalamatan ini

dapat digunakan untuk mengakses larik local pada frame stack. Mode ini juga dapat

diggunakan untuk mendukung larik dua dimensi; pada kasus ini, penggantian menunjuk ke

permukaan larik, dan masing-masing register menangani satu dimensi larik. Indeks berskala

basis dengan mode penggantin menjumlahkan isi register indeks dikalikan dengan factor

skala, isi register basis, dan penggantian. Hal ini berguna jika larik disimpan pada frame

stack; dalam hal ini, elemen-elemen larik masing-masing panjangnya 2,4 atau 8 byte. Mode

ini juga memberikan pengindeksan larik dua dimensi yang efisien ketika elemen-elemen larik

yang panjangnya adalah 2,4 atau 8 byte.

Akhirnya, pengalamatan relative dapat digunakan dalam induksi transfer of control.

Penggantian ditambahkan ke nili pencacah program konter, poin-poin yang mana bagi

instruksi berikutnya. Dalam kasus ini penggantian diperlukan sebagai byte, bertanda word,

10Set-set Instruksi: Mode dan Bentuk Pengalamatan

Page 11: TCP/IP dan Adress · Web viewKetika operand terisi dalam register data, bit tanda diperluas ke kiri sepenuhnya ukuran word data. Keuntungan pengalamatan segera adalah bahwa tidak

atau nilai double word, dan itu nilai baik peningkatan maupun pengurangan alamat dalam

pencacah program.

2. Mode Pengalamatan Power PC

Secara umum pada kebanyakan mesin RISC, dan tidak sama dengan Pentium dan

kebanyakan mesin CICS, Power PC menggunakan set mode pengalamatan sederhana dan

relative secara langsung. seperti diindikasikan pada Tabel 11.3, mode ini diklasifikasikan

dengan mudah berkenan dengan jenis instruksi.

3. Arsitektur Load/Store

PowerPc memberikan dua alternative mode pengalamatan untuk instruksi load/store.

Pada pengalamatan tidak langsung, instruksi meliputi penggantian 16 bit ditambahkan ke

register basis, yang memungkinkan berupa sembarang register bertujuan umum. Sebagai

tambahan, instruksi dapat dispesifikasikan berupa alamat efektif yang baru dihiting dapat

diumpan-balikkan ke register basis, membarui isi terakhir. Membarui pilihan bermanfaat

untuk pengindeksan progresif terhadap larik dalam pengulangan.

Teknik pengalamatan lainnya untuk instruksi load/store adalah pengalamatan

terindeks tidak langsung. Dalam kasus ini, acuan instruksi register basis dan register indeks,

keduanya mungkin berupa sembarang register bertujuan umum. Alamat efektif merupakan

penjumlahan isi dua register ini. Lagi, membarui pilihan menyebabkan register basis untuk

dibarui ke alamat efektif yang baru.

Tabel 11.3 Mode-mode Pengalamatan PowerPC

Mode Algoritma

Tidak langsung

Terindeks tidak langsung

Pengalamatan Load/Store

EA = (BR) + D

EA = (BR) + (IR)

Mutlak

Relative

Tidak langsung

Pengalamatan cabang

EA = I

EA = (PC)+I

EA = (L/CR)

Register

Segera

Komputasi Titik Tetap

EA = GPR

11Set-set Instruksi: Mode dan Bentuk Pengalamatan

Page 12: TCP/IP dan Adress · Web viewKetika operand terisi dalam register data, bit tanda diperluas ke kiri sepenuhnya ukuran word data. Keuntungan pengalamatan segera adalah bahwa tidak

Register

Komputasi titik mengambang

EA = FPR

EA = Alamat Efektif

(X) = Isi dari X

BR = Register basi

IR = Register indeks

L/CR = Register link atau perhitungan

GPR= Register bertujuan umum

FPR= Register tidak mengambang

D= Pengantian

I= Nilai segera

PC= Pencacah program

4. Pengalamatan Cabang

Diberikan tiga pengalamatan cabang. Ketika pengalamatan mutlak digunakan dengan

instruksi-instruksi cabang tanpa syarat, alamat efektif instruksi berikutnya berasal dari nilai

segera 24 bit dalam instruksi tersebut. Nilai 24 bit dikembangkan ke dalam nilai 32 bit

dengan menambahkan dua 0 ke terakhir paling sedikit signifikan dan perpanjangan tanda.

Untuk instruksi cabang bersyarat, alamat efektif instruksi berikutnya berasal dari nilai segera

16 bit di dalam instruksi. Nilai 16 bit diperluas ke nilai 32 bit dengan menambahkan dua 0 ke

akhir paling sedikit signifikan dan perpanjangan tanda.

Pengalamatan relative, nilai segera 24 bit atau nilai segera 14 bit diperluas sama seperti

sebelumnya. Nilai hasilnya kemudian ditambahkan ke pencacah program untuk

mendefenisikan lokasi relative terhadap instruksi terakhir. Mode pengalamatan bersyarat

lainnya adalah pengalamatan tidak langsung. Mode ini memperoleh alamat efektif instruksi

berikutnya dari baik register link maupun register perhitungan. Perlu dicatat dibanding

dengan hal ini register perhitungan digunakan untuk menampung alamat instruksi cabang.

Register ini juga dapat digunakan untuk pengulangan, seperti diterangkan sebelumnya.

5. Instruksi Aritmatika

12Set-set Instruksi: Mode dan Bentuk Pengalamatan

Page 13: TCP/IP dan Adress · Web viewKetika operand terisi dalam register data, bit tanda diperluas ke kiri sepenuhnya ukuran word data. Keuntungan pengalamatan segera adalah bahwa tidak

Untuk aritmatika integer, semua operand harus dimasukkan dalam register atau bagian

instruksi manapun. Pada pengalamatan register, operand sumber atau operand tujuan

dispesifikasikan sebagai salah satu register bertujuan umum. Pada pengalamatan segera,

operand sumber muncul sebagai kualitas tanda 16 bit pada instruksi tersebut.

Untuk aritmatika titik mengambang, semua operand merupakan register titik

mengambang; yaitu, hanya digunakan pengalamatan register.

C. Bentuk-Bentuk Instruksi

Suatu bentuk instruksi mendefinisikan layout bit instruksi, dalam kaitannya dengan

bagian utamanya. Suatu bentuk instruksi harus meliputi sebuah opcode dan secara implisit

atau secara eksplisit, operand nol atau lebih. Masing-masing operand eksplisit diacu dengan

menggunakan salah satu mode pengalamatan. Secara implisit atau eksplisit, bentuk harus

mengindikasikan adanya mode pengalamatan untuk masing-masing operand. Untuk

kebanyakan set instruksi, digunakan bentuk instruksi lebih dari satu.

Rancangan bentuk instruksi merupakan suatu seni yang kompleks, dan suatu variasi

yang mengagumkan dalam rancangan yang telah diimplementasikan.

1. Panjang Instruksi

Hal-hal paling mendasar yang dihadapi untuk merancang adalah panjang bentuk

instruksi. Keputusan ini mempengaruhi oleh, kapasitas memory, organisasi memory, struktur

bus, kompleksitas CPU, dan kecepatan CPU. Keputusan ini menentukan kesempurnaan dan

fleksibilitas dari mesin seperti dilihat oleh pemrogram bahasa asembli.

Kerugian yang paling jelas disini adalah antara keinginan untuk repertoire instruksi

yang handal dan kebutuhan untuk menyimpan ruang. Pemrogram menginginkan opcode yang

lebih, operand yang lebih, mode pengalamatan yang lebih, dan cakupan alamat yang lebih

besar. Opcode yang lebih dan operand yang lebih, membuat lebih mudah bagi pemrogram,

karena program yang lebih pendek dapat ditulis untuk memenuhi tugas yang diberikan.

Dengan cara yang sama, mode pengalamatan yang lebih memberikan fleksibilitas lebih besar

bagi pemrogram dalam pengimplementasian fungsi tertentu, seperti manipulasi tabel dan

percabangan banyak cara. Dan tentu saja, dengan peningkatan penggunaan memori virtual,

pemrograman ingindapat mencakup alamat memori lebih besar. Panjang instruksi yang lebih

panjang, bias sja tidak berguna. Sebuah instruksi 64 bit menduduki 2 kali lebih ruang

instruksi 32 bit tetapi mungkin manfaatnya kurang dari dua kali.

13Set-set Instruksi: Mode dan Bentuk Pengalamatan

Page 14: TCP/IP dan Adress · Web viewKetika operand terisi dalam register data, bit tanda diperluas ke kiri sepenuhnya ukuran word data. Keuntungan pengalamatan segera adalah bahwa tidak

Selain kekurangan mendasar ini, terdapat pertimbangan yang lain. Salah satu panjang

instruksi harus sama dengan panjang transfer memori atau panjang instruksi harus berbagai

macam berbeda. Cara lainnya, kita tidak akan mendapatkan kesatuan bilangan instruksi

selama siklus pengambilan. Sebuah pertimbangan yang terkait adalah kelajuan transfer

memori. Kelajuan ini belum mengikuti peningkatan kecepatan prosesor. Maka, memori

dapat menjadi suatu kemacetan jika prosesor dapat mengeksekusi instruksi lebih cepat dari

pada memori dapat mengambilnya.

2. Alokasi Bit

Faktor saling berhubungan berikut menentukan penggunaan pengalamatan bit :

a. Jumlah mode pengalamatan. Kadang-kadang mode pengalamatan dapat diindikasikan

secara implisit. Sebagai contoh, opcode tertentu mungkin selalu meminta untuk

pengindeksan. Pada kasus yang lain, mode pengalamatan harus eksplisit, dan satu atau

lebih bit mode akan diperlukan.

b. Jumlah operand. Kita sudah melihat bahwa lebih sedikit alamat dapat dibuat bagi

program lebih panjang, yang lebih canggung. Instruksi umum pada mesin saat ini

memberikan dua operand. Masing-masing alamat operand pada instruksi mungkin

memerlukan indikator mode, atau penggunaan indicator mode dapat dibatasi pada

hanya satu bidang alamat saja.

c. Register versus memori. Sebuah mesin harus mempunyai register sehingga data dapat

dibawa kedalam CPU pengolahannya. Dengan register tunggal terlihat oleh pengguna,

satu alamat operand adalah implisit dan mengkonsumsi bukan bit instruksi. Semakin

register itu dapat digunakan untuk acuan operand, lebih sedikit bit yang diperlukan.

Sejumlah penelitian mengindikasikan bahwa total register yang terlihat oleh pengguna

dari 8 sampai 32 dapat diinginkan [LUND77, HUCK83]. Arsitektur yang paling

kontemporer mempunyai sedikitnya 32 register.

d. Jumlah set register. Mesin yang paling kontemporer mempunyai satu set register

bertujuan umum, pada umumnya dengan register 32 atau lebih dalam satu set.

Register ini dapat digunakan untuk menyimpan data dan dapat digunakan untuk

menyimpan alamat untuk pengalamatan penggantian.

e. Cakupan alamat. Untuk alamat yang mengacu memori, cakupan alamat yang dapat

diacu dihubungkan dengan jumlah bit alamat. Karena pembebanan ini sebuah

pembatasan sederhana, pengalamatan langsung jarang digunakan. Pada pengalamatan

penggantian, cakupan dibuka sampai kepanjang register alamat.

14Set-set Instruksi: Mode dan Bentuk Pengalamatan

Page 15: TCP/IP dan Adress · Web viewKetika operand terisi dalam register data, bit tanda diperluas ke kiri sepenuhnya ukuran word data. Keuntungan pengalamatan segera adalah bahwa tidak

f. Granularitas alamat. Untuk alamat yang mengacu memori dari pada register, faktor

lainnya adalah granularitas pengalamatan. Pada system dengan word 16 bit atau 32

bit, alamat dapat mengacu word atau byte pada pilihan perancang. Pengalamatan byte

menyenangkan untuk manipulasi karakter tetapi diperlukan, untuk memori berukuran

tetap, bit alamat yang lebih.

3. PDP-8

Salah satu rancangan instruksi paling sederhana untuk computer bertujuan umum

adalah PDP-8. PDP-8 menggunakan instruksi 12 bit dan beroperasi pada word 12 bit.

Terdapat register bertujuan umum tunggal, akumulator.

Bentuk instruksi PDP-8 sungguh efisien. Bentuk tersebut mendukung pengalamatan

tidak langsung, pengalamatan penggantian, dan pengindeksan. Dengan menggunakan opcode

perluasan, mendukung total kira-kira 35 instruksi. Dengan batasan panjang instruksi 12 bit,

perancang dengan susah payah dapat melakukannya dengan lebih baik.

4. PDP-10

Perbedaan yang jauh bagi set instruksi PDP-8 adalah PDP-10. PDP-10 dirancang untuk

system berbagi waktu skala besar, dengan penekanan pada membuat system mudah bagi

program, sekalipun biaya perangkat keras tambahan dilibatkan.

Diantara prinsip rancangan yang telah dilakukan pada perancangan set instruksi adalah

[BELL78C].

a. Orthogonalitas. Merupakan prinsip dengan 2 variabel independen satu sama lain.

Dalam konteks set instruksi, istilah mengindikasikan bahwa elemen-elemen lain

instruksi adalah tidak terikat pada opcode.

b. Kelengkapan. Masing-masing jenis data aritmetika seharusnya mempunyai set operasi

lengkap dan identik.

c. Pengalamatan langsung. Basis ditambah pengalamatan penggantian, tempat dimana

organisasi memori membebankan pada pemrogram, telah dihindarkan menuju ke

pengalamatan langsung.

5. Instruksi-instruksi Panjang Variabel

Biaya prinsip besar instruksi panjang variable adalah suatu peningkatan dalam

kompleksitas CPU. Turunnya harga perangkat keras, penggunaan pemrograman mikro, dan

peningkatan umum dalam pemahaman prinsip-prinsip rancangan CPU mempunyai semua

dukungan dalam penurunan biayanya. Bagaimanapun, kita akan mengetahui bahwa mesin-

15Set-set Instruksi: Mode dan Bentuk Pengalamatan

Page 16: TCP/IP dan Adress · Web viewKetika operand terisi dalam register data, bit tanda diperluas ke kiri sepenuhnya ukuran word data. Keuntungan pengalamatan segera adalah bahwa tidak

mesin RISC dan superscalar dan memanfaatkan penggunaan dari instruksi panjang tetap

untuk memberikan kinerja yang ditingkatkan.

6. PDP-11

PDP-11 dirancang untuk memberikan set instruksi yang handal dan fleksibel dalam

batasan computer mini 16 bit [BELL70].

PDP-11 menjalankan set delapan register bertujuan umum 16 bit. Dua register ini

mempunyai arti tambahan: satu digunakan sebagai pointer stack untuk operasi stack

bertujuan khusus, dan salah satunya digunakan sebagai pencacah program, yang terdiri dari

alamat instruksi berikutnya.

Instruksi-instruksi PDP-11 pada umumnya satu word (16 bit) panjang. Untuk beberapa

instruksi, satu atau dua alamat memori ditambahkan, sehingga instruksi 32 bit dan 48 bit

menjadi bagian repertoire.

7. VAX

Kebanyakan arsitektur memberikan relative lebih sedikit jumlah bentuk instruksi tetap.

Hal ini dapat menyebabkan dua permasalahan bagi pemrogram. Pertama, mode pengalamatan

dan opcode tidak orthogonal. Kedua, hanya jumlah operand terbatas yang dapat

diakomodasikan secara umum sampai kedua atau tiga.

Untuk menghindari permasalahan ini, dua kriterian telah digunakan dalam merancang

bentuk instruksi VAX:

Semua perintah perlu mempunyai jumlah operand “yang alami”

Semua operand perlu mempunyai spesifikasi keadaan umum yang sama.

Hasilnya adalah bentuk instruksi yang sangat variable. Sebuah instruksi terdiri dari

opcode 1 byte atau 2 byte yang diikuti dari nol hingga 6 operand spesifier, tergantung pada

opcode.

16Set-set Instruksi: Mode dan Bentuk Pengalamatan