MATERI SISTEM KOMPUTER SEMESTER GENAP KELAS XI MATERI SISTEM KOMPUTER SEMESTER GENAP KELAS XI
BAB I BAB I
MEMAHAMI STRUKTUR DAN FUNGSI CPU MEMAHAMI STRUKTUR DAN FUNGSI CPU 1.
1. STRUKTUR CPU (ALU,CU,REGISTER)STRUKTUR CPU (ALU,CU,REGISTER)
Arithmetic Arithmetic and and Logic Logic UnitUnit (ALU)(ALU), , bertubertugas gas membmembentuk entuk fungsfungsi i – – fungsfungsii
pen
pengolgolahaahan n datdata a komkomputputerer. ALU . ALU sersering ing disdisebuebutt mesmesin in bahbahasaasa ((machinemachine language
language) ) karekarena na bagiabagian inn ini i mengmengerjakerjakan ian instrunstruksi ksi – in– instrukstruksi si bahabahasa sa mesinmesin yang
yang diberikan diberikan padanya. padanya. Seperti Seperti istilahnya, istilahnya, ALU ALU terdiri terdiri dari dari dua dua bagian, bagian, yaituyaitu unit
unit arithmetika arithmetika dan dan unit unit logika logika boolean, boolean, yang yang masing–masing masing–masing memiliki memiliki spesifikasispesifikasi tugas tersendiri
tugas tersendiri
Control Unit, yang bertugas untuk mengontrol operasi CU dan se!ara keselurahanControl Unit, yang bertugas untuk mengontrol operasi CU dan se!ara keselurahan
mengontrol
mengontrol komputer komputer sehingga sehingga terjadi terjadi sinkronisasi sinkronisasi kerja kerja antar antar komponen komponen dalamdalam menjalankan
menjalankan fungsi fungsi – – fungsi fungsi operasinya. operasinya. ""ermasuk ermasuk dalam dalam tanggung tanggung ja#ab ja#ab unitunit kontrol
kontrol adalah adalah mengambil mengambil instruksi instruksi – – instruksi instruksi dari mdari memori emori utama utama dan dan menentukanmenentukan jenis instruksi tersebut.
jenis instruksi tersebut.
$egis$egister ter adaadalah lah media media penypenyimpanimpanan an interninternal al CU CU yang yang digudigunakanakan n saat saat proseprosess
pe
pengngololahahan an dadatata. . %e%emomori ri inini i bebersrsifaifat t sesemementntarara, a, bibiasasananya ya didigugunanakakan n ununtutukk menyimpan data saat diolah ataupun data untuk pengolahan selanjutnya.
menyimpan data saat diolah ataupun data untuk pengolahan selanjutnya.
CU CU intinter!er!ononne!ne!tiotion, n, adaadalah lah sissistem tem konkonekseksi i dan dan bus bus yanyang g menmenghghubuubungkngkanan
komponen internal CU, yaitu ALU, unit kontrol dan register –
komponen internal CU, yaitu ALU, unit kontrol dan register – register dan jugaregister dan juga
dengan bus – bus eksternal CU yang menghubungkan dengan sistem lainnya, dengan bus – bus eksternal CU yang menghubungkan dengan sistem lainnya, seperti memori utama, piranti masukan&keluaran
seperti memori utama, piranti masukan&keluaran 2.
2. ORGANISASI PROSESSORORGANISASI PROSESSOR
ro!essor sering di sebut sebagai 'otak komputer dan merupakan pusat ro!essor sering di sebut sebagai 'otak komputer dan merupakan pusat pemrosesan intruksiintruksi program.
pemrosesan intruksiintruksi program.
*egiatan yang harus dilakukan pro!essor adalah + *egiatan yang harus dilakukan pro!essor adalah + .
. -et!h ntru!tion / %engambil ntruksi-et!h ntru!tion / %engambil ntruksi 0.
0. nterpret ntru!tion / %enerjemahkan ntruksinterpret ntru!tion / %enerjemahkan ntruksi 1.
1. -et!h 2ata / %engambil 2ata-et!h 2ata / %engambil 2ata 3.
3. ro!ess 2ata / %engolah 2ataro!ess 2ata / %engolah 2ata 4.
4. 5rite 2ata / %enulis 2ata5rite 2ata / %enulis 2ata Agar dapat melakuk
Agar dapat melakukan kegiatan di atas pro!esan kegiatan di atas pro!essor sor sebaiknya +sebaiknya + .
. CU perlu menyimpan data untuk sementara #aktu.CU perlu menyimpan data untuk sementara #aktu. 0.
0. CU perlu mengingat lokasi intruksi terakhir sehingga dapat mengambil intruksiCU perlu mengingat lokasi intruksi terakhir sehingga dapat mengambil intruksi berikutnya.
berikutnya. 1.
1. CU perlu menyimpan intruksi dan data untuk sementara #aktu pada saat eksekusiCU perlu menyimpan intruksi dan data untuk sementara #aktu pada saat eksekusi intruksi sedang berlangsung.
intruksi sedang berlangsung. 3.
3. CU memerlukan register atau memori internal berukuran ke!il.CU memerlukan register atau memori internal berukuran ke!il. 3.
3. REGISREGISTER TER INTERINTERNAL NAL (Pro(Program gram CounCounterter, , AuAumu!atomu!atorr, , In"eIn"e#$ #$ reg%reg%$ter $ter "an"an Sta# &o%nter)
Sta# &o%nter) 1.
1. Program Counter (PC)Program Counter (PC) adalah register yang digunakan untuk menyimpan alamat adalah register yang digunakan untuk menyimpan alamat lok
lokasi asi dardari i memmemori ori utautama ma yanyang g berberisi isi insinstrutruksksi i yanyang g sedsedang ang dipdiprosroses. es. SeSelamlamaa pemrosesan instruksi oleh CU, isi dari C diubah menjadi alamat dari memori pemrosesan instruksi oleh CU, isi dari C diubah menjadi alamat dari memori ut
utamama a yayang ng beberisrisi i ininststruruksksi i beberirikukutntnya ya yayang ng memendndapapat at gigililiraran n akakan an didiprprososeses,, sehingga bila pemrosesan sebuah instruksi selesai maka jejak instruksi selanjutnya sehingga bila pemrosesan sebuah instruksi selesai maka jejak instruksi selanjutnya di memori utama dapat dengan mudah didapatkan
2. Aumu!ator (A) adalah register yang memiliki kemapuan khusus dalam opersi aritmatika dan logika. 6ial dilihat dari instruksiinstruksi dari assembly Language 789 maka operasioperasi aritmatika dan logika selalu melibtkan a!!umulator A. 6ial dibandingkan dengan registerregister yang lain maka a!!umulator ini paling sering digunakan oleh programmer.
3. In"e' reg%$ter adalah $egister yang dipakai untuk melakukan operasi string dan sering digunakan untuk menulis dan memba!a ke atau dari memory seperti halnya 6: dan 6
(6ase ointer), yang terdiri dari register + . S (Sour!e nde;)
2ipakai sebagai pointer atau tempat penyimpan data. $egisterini sering dipakai sebagai pointer untuk menunjuk sebuah item (inde;ing) dalam satu kesatuan data. ada operasi string, S dipakai untuk menunjuk ke byte atau #ord dalam sebuah sour!e string.
0. 2 (2estination nde;)
2ipakai sebagai pointer atau tempat penyimpanan data. Sering dipakai sebagai pointer untuk menunjuk sebuah item (inde;ing) dalam satu kesatuan data. ada operasi string, 2 dipakai untuk menunjuk ke byte atau #ord dalam sebuah destination string.
. Sta# Po%nter +register yang memiliki fungsi operasi ush < op, =perasi push menambah bagian atas daftar, menyembunyikan semua item yang sudah di sta!k, atau menginisialisasi sta!k jika kosong. =perasi pop menghapus item dari bagian atas daftar, dan mengembalikan nilai ini ke pemanggil.Sebuah pop mengungkapkan baik yang sebelumnya telah tersembunyi, atau hasil dalam daftar kosong.
BAB II
Memahami Karakteristik Set Instruksi (Oeran! !an Oerasi" 1. KARAKTERISTIK AN *UNGSI SET INSTRUKSI
=perasi dari CU ditentukan oleh instruksiinstruksi yang dilaksanakan atau
dijalankannya. nstruksi ini sering disebut sebagai instruksi mesin (me!hine instru!tions) atau instruksi komputer (!omputer instru!tions).
*umpulan dari instruksiinstruksi yang berbeda yang dapat dijalankan oleh CU
disebut set nstruksi (nstru!tion Set). 2. ELE+ENELE+EN INSTRUKSI 1. O&erat%on Co"e (O&o"e)
menspesifikasikan operasi yang akan dilakukan. *ode operasi berbentuk kode biner. 2. Soure O&eran" Re-erene
operasi dapat berasal dari lebih satu sumber. =perand adalah input instruksi. 3. Re$u!t O&eran" Re-erene
%erupakan hasil atau keluaran operasi. . Ne't In$trut%on Re-erene
elemen ini menginformasikan CU posisi instruksi berikutnya yang harus diambil dan dieksekusi
3. TIPETIPE INSTRUKSI
%eliputi operasioperasi aritmatika dan logika. =perasi aritmatika memiliki kemampuan komputasi untuk pengolahan data numerik. Sedangkan instruksi logika beroperasi terhadap bitbit #ord sebagai bit, bukannya sebagai bilangan, sehingga instruksi ini memiliki kemampuan untuk pengolahan data lain.
2. Per&%n"aan "ata ("ata mo/ement)
berisi instruksi perpindahan data antar register maupun modul &=.untuk dapat diolah oleh CU maka diperlukan instruksiinstruksi yang bertugas memindahkan data operand yang diperlukan.
3. Pen0%m&anan "ata ("ata $torage)
berisi instruksiinstruksi penyimpanan ke memori. nstruksi penyimpanan sangat penting dalam operasi komputasi, karena data tersebut akan digunakan untuk operasi berikutnya, minimal untuk ditampilkan pada layar harus diadakan penyimpanan #alaupun sementara.
. Kontro! a!%ran &rogram (&rogram -!o ontro!)
6erisi instruksi pengontrolan operasi dan per!abangan. nstruksi ini berfungsi untuk pengontrolan status dan mengoperasikan per!abangan ke set instruksi l ain.
. TIPE TIPE OPERAN 1. A""re$$e$
2. Numer$ +
– nteger or fi;ed point /> sebuah integer yang skala dengan faktor tertentu. enting untuk di!atat bah#a faktor skala ditentukan oleh jenis, itu adalah sama untuk semua nilai dari jenis fi;edtitik tertentu.
– -loating point /> sebuah bilangan yang digunakan untuk menggambarkan sebuah nilai yang sangat besar atau sangat ke!il
– 2e!imal (6C2 )/> sistem pengkodean bilangan desimal yang metodenya mirip dengan bilangan biner biasa? hanya saja dalam proses kon@ersi, setiap simbol dari bilangan desimal dikon@ersi satu per satu, bukan se!ara keseluruhan seperti kon@ersi bilangan desimal ke biner biasa.
3. Carater$ +
– ASC (American Standard Code for Information Interchange) /> suatu standar internasional dalam kode huruf dan simbol seperti e; dan Uni!ode tetapi ASC lebih bersifat uni@ersal, !ontohnya 03 adalah untuk karakter BB. a selalu digunakan oleh komputer dan alat komunikasi lain untuk menunjukkan teks.
– D6C2C (Extended Binary Coded Decimal Interchange Code) ! kode 8 bit untuk huruf yang dipakai pada sistem operasi komputer merk 6%, seperti E&=S, =S&1F9, G%, GSD, =S&399, serta i4&=S
. Log%a! ata + 6ila data berbentuk binary+ 9 dan . TIPETIPE OPERASI
TRANS*ER ATA
%enetapkan lokasi operand sumber dan operand tujuan.
Lokasilokasi tersebut dapat berupa memori, register atau bagian paling atas
daripada sta!k.
%enetapkan panjang data yang dipindahkan. %enetapkan mode pengalamatan.
"indakan CU untuk melakukan transfer data adalah +
0. Apabila memori dilibatkan +
%enetapkan alamat memori.
%enjalankan transformasi alamat memori @irtual ke alamat memori aktual. %enga#ali pemba!aan & penulisan memori
=perasi set instruksi untuk transfer data +
. %=GD + memindahkan #ord atau blok dari sumber ke tujuan 0. S"=$D + memindahkan #ord dari prosesor ke memori.
1. L=A2 + memindahkan #ord dari memori ke prosesor. 3. D:CAHID + menukar isi sumber ke tujuan.
4. CLDA$ & $DSD" + memindahkan #ord 9 ke tujuan. J. SD" + memindahkan #ord ke tujuan.
K. US + memindahkan #ord dari sumber ke bagian paling atas sta!k. 8. = + memindahkan #ord dari bagian paling atas sumber
4. INSTRUKSI PERCA5ANGAN
"ujuan + praktikan dapat menggunakan instruksi per!abangan dalam program. "eori nstruksi per!abangan berfungsi untuk membelokkan runtun eksekusi program yang semula sekuensial menjadi melompat ke instruksi yang lainnya. nstruksi per!abangan terdiri atas instruksi per!abangan tanpa syarat dan bersyarat.
Peraangan Tan&a S0arat Sintaks+ % label Contoh+ %=G AL,4 %=G 6L,4 % stop H= stop+$D" Peraangan 5er$0arat
er!abangan bersyarat yaitu instruksi yang akan melaksanakan per!abangan ke suatu instruksi lain jika kondisinya terpenuhi, jika kondisi tidak terpenuhi maka instruksi selanjutnya (di ba#ahnya) yang
akan dieksekusi. nstruksi per!abangan dapat dikelompokkan menjadi tiga group, yaitu + 1. Menguji satu bit fag
2. Membandingkan bilangan bertanda
1. %embandingkan bilangan tak bertanda
Menguji Satu Bit Instruksi Deskripsi Kondisi
JZ, JE Jump i Zero (Equel) ZF = 1 J , J!, J"#E Jump i arr$ (!elo%, "ot
#bo&e Equal). CF = 1
J' Jumpi'ign. SF = 1
J Jump i &erfo% OF = 1
JE, J Jump if Parity Even. PF = 1 J"Z , J"E Jump if Not Zero (Not Equal). ZF = 0 J" , J"!, J#E Jump if Not Carry (Not elo!"
#$ove Equal). CF = 0
J" Jump if Not Overflo!. OF = 0 J, J" Jump if Parity O&& (No
Parity). PF = 0
Membandingkan Bilangan Bertanda Instruksi
eskri!si K"ndisi JE " JZ Jump if Equal (=). Jump if
Zero. ZF = 1
JNE " JNZ Jump if Not Equal ('). Jump
if Not Zero. ZF = 0
J " JN*E Jump if reater (). Jump if Not *e++ or Equal (not '=)
ZF = 0 an& SF = OF J* " JNE Jump if *e++ ('). Jump if Not
reater or Equal (not =). SF ' OF JE " JN* Jump if reater or Equal (=).
Jump if Not *e++ (not '). SF = OF J*E " JN
Jump if *e++ or Equal ('=).Jump if Not reater (not ).
ZF = 1 or SF ' OF Membandingkan bilangan
tak bertanda Instruksi
eskri!si K"ndisi JE " JZ Jump if Equal (=). Jump if
Zero. ZF = 1
JNE " JNZ Jump if Not Equal ('). Jump
if Not Zero. ZF = 0
J# " JNE Jump if #$ove (). Jump if Not elo! or Equal (not '=).
CF = 0 an& ZF = 0 J " JN#E" JC
Jump if elo! ('). Jump if Not #$ove or Equal (not =).
Jump if Carry.
CF = 1
J#E " JN" JNC
Jump if #$ove or Equal (=). Jump if Not elo! (not '). Jump if Not Carry.
CF = 0 JE " JN# Jump if elo! or Equal ('=).
Jump if Not #$ove (not ). CF = 1 or ZF = 1
S%nta#$6 =C=2D label Conto6 %=G AL,4 %=G 6L,4 C% AL,6L D stop A22 6L stop+$D"
Se!ara umum jika akan membandingkan dua buah bilangan maka menggunakan instruksi C%.
ersonal *omputer rogram D%U898J
7. +E+ECA8KAN +ASALA8 (Conto Ka$u$)
f.."hen..Dlse 6entuk umum + - kondisi "DH MStatement N DLSD MStatement 0N Contoh kasus+sebuah aturan untuk menonton sebuah film tertentu adalah sebagai berikut.jika usia penonton lebih dari K tahun maka penonton diperbolehkan dan apabila usia penonton kurang dari K tahun maka penonton tidak diperbolehkan nonton.
I. 6uatlah dalam bahasa pas!al untuk permasalahan tersebut dengan menggunakan -.."hen..Dlse.
enyelesaian+ ermasalahan diatas merupakan !iri permasalahan yang menggunakan struktur per!abangan. al ini ditandai dengan adanya pernyataan jika..maka..(atau if O "hen )
uses !rt?
@ar a + integer? begin
!lrs!r?
#rite(P%asukkan usia anda /Q)? readln(a)?
if a>/ K then begin
#rite(PAnda boleh masukQ) else
#rite(PAnda tidak boleh masukQ) end?
readkey? end.
II. Case
=-6entuk umum + CASD ungkapan =f Statement
Statement 0 2st.
Contoh kasus + "ampilkan kalimat sesuai dengan kode kalimat, !ontoh + jika memasukkan angka maka yang keluar 'satu, jika memeasukkan dua maka yang keluar dua, dst sampai 4.
enyelesaian uses !rt?
@ar a + integer? begin
!lrs!r?
#rite(P%asukkan angka pilihan anda sampai 4/Q)? readln(a)?
+ begin 5rite(PsatuQ)? Dnd? 0+ begin 5rite(PduaQ)? Dnd? 1+ begin 5rite(PtigaQ)? Dnd? 3+ begin 5rite(PempatQ)? Dnd? 4+ begin 5rite(PlimaQ)? Dnd? $eadkey? BAB III
Memahami M#!e Dan F#rmat Pen$%amatan 1. +o"e "an *ormat Penga!amatan
%ode pengalamatan adalah bagaimana !ara menunjuk dan mengalamati suatu lokasi memori pada sebuah alamat di mana operand akan diambil. %ode pengalamatan diterapkan pada set instruksi, dimana pada umumnya instruksi terdiri dari op!ode (kode operasi) dan alamat. Setiap mode pengalamatan memberikan fleksibilitas khusus yang sangat penting. %ode pengalamatan ini meliputi dire!t addressing, indire!t addressing, dan immediate addressing.
mode format pengalamatan =peration !ode (op !ode)
Sour!e operand referen!e $esult operand referen!e :e;t instru!tion preferen!e 2. Mode Pengalamatan Inherent
alam mode pengalamatan in*erent, semua inormasi $ang dibutu*kan untuk operasi tela* diketa*ui otoma-s ole* , dan -dak dibutu*kan operan eksternal dari memori atau dari program. peran $ang digunakan *an$ala* register internal dari atau data dalam sta/k. 0arena itu operasi ini *an$ala* terdiri dari satu b$te instruksi.
3. Mode Pengalamatan Immediate
alam mode pengalamatan immediate, operan terkandung di dalam b$te $ang langsung mengiku- kode operasi. Mode ini digunakan saat suatu *arga atau konstanta diketa*ui saat program dibuat dan -dak akan diruba* selama eksekusi program. perasi dengan mode ini membutu*kan dua b$te instruksi, satu untuk kode operasi dan satu lagi untuk data b$te.
4. Mode Pengalamatan Direct
Mode pengalamatan dire/t mirip dengan mode pengalamatan etended ke/uali ba*%a upper b$te dari alamat operan selalu dianggap 33. 0arena itu, *an$a lo%er4b$te dari operan $ang diperlukan untuk dimasukkan dalam instruksi. engalamatan dire/t men$ebabkan e5siensi alamat dalam 267 b$te pertama dalam memori. #rea ini dinamakan dengan dire/t page dan mengandung on4/*ip 8#M dan register 9:.
engalamatan dire/t ini e5sien bagi memori program dan %aktu eksekusi. alam mode ini instruksi terdiri dari dua b$te, satu untuk kode operasi dan satu lagi untuk alamat operand.
5. Mode Pengalamatan !tended
alam mode pengalamatan etended, alamat dari operan terkandung dalam dua b$te $ang mengiku-kode operasi. engalamatan etended ini dapat digunakan untuk mengakses semua lokasi dalam memori mikrokontroler termasuk 9:, 8#M, 8M, dan E8M. 0arena itu operasi ini membutu*kan -ga b$te, satu untuk kode operasi, dan dua untuk alamat dari operan.
". Mode Pengalamatan Inde!ed
alam mode pengalamatan indeed, alamat eek- adala* &ariabel dan tergantung pada dua aktor; 1) isi inde register saat itu dan 2) nilai o<set $ang terkandung dari b$te $ang mengiku- kode operasi. =erdapat -ga jenis pengalamatan indeed $ang didukung ole* keluarga M7>?36, $aitu; no4o<set, >4bit o<set, dan 174
bit o<set. alam mode pengalamatan indeed4no o<set, alamat eek- dari operan terkandung dalam inde register >4bit. 0arena itu, mode pengalamatan ini dapat mengakses 267 lokasi memori (dari 3333 sampai 33@@). 9nstruksi mode ini membutu*kan satu b$te instruksi.
7. +nemon% O&erat%on, +a%ne Co"e, A""re$$%ng +o"e
+nemon% O&erat%on
*ode operasi (op!ode) direpresentasi kan dengan singkatan – singkatan, yang disebut mnemoni!.
%nemoni! mengindikasikan suatu operasi bagi CU. Contoh mnemoni! adalah +
– A22 / penambahan
– SU6 / substra!t (pengurangan) – L=A2 / muatkan data ke memori
Setiap op!ode simbolik memiliki representasi biner yang tetap dan programer dapat menetapkan lokasi masing – masing operand
=perand dari =peration %emori ke memori.
2alam hal ini data berasal dan kembali ke memori, dan tahap operasi se!ara umum adalah +
a. Ambil nilai operand dari memori b. Dksekusi operasi yang diperlukan
!. *embalikan hasilnya ke memori %emori ke register.
Raitu memindah nilai dari data kememori ke register. Satu nilai data berasal dari memori dan satu lagi dari register. asil eksekusi dikembalikan ke memori atau ke register dimana operand berasal.
$egister ke register.
2alam hal ini digunakan sejumlah register untuk menyimpan seluruh nilai data yang akan digunakan dalam komputasi. 2ata harus diambil dari memori oleh sederet instruksi sebelum komputasi dimulai. Setelah komputasi dilakukan maka hasilnya dikembalikan lagi dengan register
+a%ne Co"e
. =peration !ode (=p !ode)
%enspesifikasi operasi yang akan dilakukan. *ode operasi berbentuk kode biner 0. Sour!e =perand referen!e
=perasi dapat berasal dari lebih satu sumber. =perand adalah input operasi 1. $esult =perand referen!e
%erupakan hasil atau keluaran operasi 3. He;t nstru!tion $eferen!e
Dlemen ini menginformasikan CU posisi instruksi berikutnya yang harus diambil dan dieksekusi
A""re$$%ng +o"e ( +o"e Penga!amatan )
%engatasi keterbatasan format instruksi + 2apat mereferensi lokasi memori yang besar
%ode pengalamatan yang mampu menangani keterbatasan tersebut +
. %asing – masing prosesor menggunakan mode pengalamatan yang berbeda – beda.
0. %emiliki pertimbangan dalam penggunaannya. Ada beberapa teknik pengalamatan +
a. mmediate Addressing
6entuk pengalamatan ini yang paling sederhana +
=perand benar – benar ada dalam instruksi atau bagian dari instruksi / =perand
sama dengan field alamat.
Umumnya bilangan akan disimpan dalam bentuk komplemen dua. 6it paling kiri sebagai bit tanda.
*etika operand dimuatkan ke dalam register data, bit tanda akan digeser ke kiri
hingga maksimum #ord data
Contoh + A22 4 ? tambahkan 4 pada akumulator *euntungan
%ode ini adalah tidak adanya referensi memori selain dari instruksi yang diperlukan
untuk memperoleh operand.
%enghemat siklus instruksi sehingga proses keseluruhan akan !epat. *erugiannya
Ukuran bilangan dibatasi oleh ukuran field alamat
. %ret A""re$$%ng engalamatan langsung
*elebihan +
-ield alamat berisi efektif address sebuah operand.
"eknik ini banyak digunakan pada komputer lama dan komputer ke!il.
anya memerlukan sebuah referensi memori dan tidak memerlukan kalkulasi
khusus. *elemahan +
*eterbatasan field alamat karena panjang field alamat biasanya lebih ke!il
dibandingkan panjang #ord
Contoh + A22 A ? tambahkan isi pada lokasi alamat A ke akumulator . In"%ret A""re$$%ng
-ield alamat menga!u pada alamat #ord di dalam memori, yang pada gilirannya akan berisi alamat operand yang panjang
Contoh + A22 (A) ? tsmbahkan isi yang ditunjuk oleh isi alamat A ke akumulator *euntungan + $uang bagi alamat menjadi besar sehingga semakin banyak alamat yang dapat referensi.
*erugian + 2iperlukan referensi memori ganda dalam satu fet!h sehingga memperlambat proses operasi
". Reg%$ter A""re$$%ng
%etode pengalamatan register mirip dengan mode pengalamatan langsung.
erbedaannya terletak pada field alamat yang menga!u pada register, bukan pada
memori utama.
-ield yang mereferensi register memiliki panjang 1 atau 3 bit, sehingga dapat
mereferensi 8 atau J register general purpose.
*euntungan pengalamatan register
2iperlukan field alamat berukuran ke!il dalam instruksi dan tidak diperlukan
referensi memori.
Akses ke register lebih !epat daripada akses ke memori, sehingga proses eksekusi
akan lebih !epat Kerug%an
$uang alamat menjadi terbatas
e. Reg%$ter In"%ret A""re$$%ng
%etode pengalamatan register tidak langsung mirip dengan mode pengalamatan
tidak langsung.
erbedaannya adalah field alamat menga!u pada alamat register. Letak operand berada pada memori yang ditunjuk oleh isi register.
*euntungan dan keterbatasan pengalamatan register tidak langsung pada dasarnya
sama dengan pengalamatan tidak langsung.
– *eterbatasan field alamat diatasi dengan pengaksesan memori yang tidak langsung sehingga alamat yang dapat direferensi makin banyak.
– 2alam satu siklus pengambilan dan penyimpanan, mode pengalamatan register tidak langsung hanya menggunakan satu referensi memori
– utama sehingga lebih !epat daripada mode pengalamatan tidak langsung -. %$&!aement A""re$$%ng
%enggabungkan kemampuan pengalamatan langsung dan pengalamatan register
tidak langsung.
%ode ini mensyaratkan instruksi memiliki dua buah field alamat, sedikitnya sebuah
field yang eksplisit.
-ield eksplisit bernilai A dan field implisit mengarah pada register =perand berada pada alamat A ditambah isi register.
"iga model displa!ement
.$elati@e Addressing
0.6ase $egister Addressing 1.nde;ing
$elati@e addressing, register yang direferensi se!ara implisit adalah program
!ounter (C).
6ase register addressing, register yang direferensikan berisi sebuah alamat
nde;ing adalah field alamat mereferensi alamat memori utama, dan register yang
direferensikan berisi pemindahan positif dari alamat tersebut. g. Sta# A""re$$%ng
Sta!k adalah array lokasi yang linier / pushdo#n list / lastinfirstoutueue.
Sta!k merupakan blok lokasi yang terbalik. 6utir ditambahkan ke pun!ak sta!k
sehingga setiap saat blok akan terisi se!ara parsial.
Rang berkaitan dengan sta!k adalah pointer yang nilainya merupakan alamat
bagian paling atas sta!k.
2ua elemen teratas sta!k dapat berada di dalam register CU, yang dalam hal ini
sta!k ponter mereferensi ke elemen ketiga sta!k.
Sta!k pointer tetap berada di dalam register.
2engan demikian, referensi – referensi ke lokasi sta!k di dalam memori pada
dasarnya merupakan pengalamatan register tidak langsung
9. L%$t%ng A!amat, +nemon%, Co"e +a%ne "an A""re$$%ng +o"e L%$t%ng A!amat
+nemon%
*ode operasi (op!ode) direpresentasi kan dengan singkatan – singkatan, yang disebut mnemoni!.
%nemoni! mengindikasikan suatu operasi bagi CU. Contoh mnemoni! adalah +
– A22 / penambahan
– SU6 / substra!t (pengurangan) – L=A2 / muatkan data ke memori
Setiap op!ode simbolik memiliki representasi biner yang tetap dan
programer dapat menetapkan lokasi masing – masing operand Co"e +a%ne
Elemen Instruksi Mesin 1. O&erat%on o"e (O& o"e)
%enspesifikasi operasi yang akan dilakukan. *ode operasi berbentuk kode biner 2. Soure O&eran" re-erene
=perasi dapat berasal dari lebih satu sumber. =perand adalah input operasi 3. Re$u!t O&eran" re-erene
%erupakan hasil atau keluaran operasi . Ne't In$trut%on Re-erene
Dlemen ini menginformasikan CU posisi instruksi berikutnya yang harus diambil dan dieksekusi
A""re$$%ng +o"e ( +o"e Penga!amatan )
%engatasi keterbatasan format instruksi +
– 2apat mereferensi lokasi memori yang besar
– %ode pengalamatan yang mampu menangani keterbatasan tersebut + . %asing – masing prosesor menggunakan mode pengalamatan yang berbeda –
beda.