Pengalamatan
description
Transcript of Pengalamatan
Pengalamatan
Suruhan – 2 bhg Opkod – menyatakan tindakan yang harus dilaksanakan. Alamat data yang diperlukan
Suruhan perlukan Data Operan
Cara data disediakan kepada suruhan – pengalamatan
Pengalamatan
Pengalamatan 4 jenis Pengalamatan segera
Alamat yangg diberi adalah alamat operan
Pengalamatan langsung Alamat yang diberi adalah alamat data
Pengalamatan daftar Alamat yang diberi adalah alamat daftar bagi data
Pengalamatan tak langsung Alamat yang diberi adalah alamat bagi lokasi yang mengandungi alamat
data yang sebenar
Pengalamatan Langsung
Opkod 1150Suruhan
Data
Ingatan
1150
Opkod Alamat
Pengalamatan Tak Langsung
Opkod 1150Suruhan
1100
Ingatan
1150
Opkod Alamat
Data1100
Format Suruhan
Ditulis dalam kod perduaan Ada beberapa jenis format
Opkod
Opkod Operan
Opkod Operan Operan
Format 1
Format 2
Format 3
Format suruhan
Suruhan format 1 Seperti suruhan untuk menamatkan perlaksanaan aturcara
Suruhan format 2 Seperti suruhan “lompat ke lokasi x”
Suruhan format 3 Guna 2 operan sebagai data. Contoh:
Pengumpuk = operan1 + operan2
Contoh set suruhan
Guna mesin 16-bit (4 bit opkod + 12 bit operan) dgn 3 daftar (PC, SP dan AC)
Contoh set suruhan
Kod Perduaan Simbol Suruhan Makna
0000xxxxxxxxxxxx
MUTD x Muat Langsung ac<-m[x]
0001xxxxxxxxxxxx
SMPD x Simpan Langsung
m[x]<-ac
0010xxxxxxxxxxxx
TAMD x Tambah Langsung
ac<-ac + m[x]
Contoh Aturcara Bahasa Mesin
Proses pengaturcaraan melibatkan 3 langkah
Lukis carta alir
Terjemahkan carta aliran ke dalam bentuk perpindahan daftar/ingatan
Terjemahkan ke dalam bentuk aturcara dengan menggunakan suruhan yang
sesuai
Contoh Aturcara Bahasa Mesin
Soalan : Tulis satu aturcara untuk menambah 2 nombor yang
disimpan dalam lokasi ingatan 100 dan 101. Andaikan kita menggunakan pangkalan output pada alamat 11.
Nombor1 Nombor2
100 101 11
=+
Contoh Aturcara Bahasa Mesin
Mula
Jumlah = Nombor1 + Nombor2
Cetak Jumlah
Tamat
LANGKAH 1 LANGKAH 2
0: ac<-m[100]
1: ac<- ac + m[101]
2: p[11]<-ac
Contoh Aturcara Bahasa Mesin
LANGKAH 3
Lokasi Ingatan Kod perduaan Kod bersimbol
020 00000000 01100100
MUTD 100
022 00100000 01100101
TAMD 101
024 11100000 00001011
OUT 11
Rekabentuk Format Suruhan
Suruhan hendaklah pendek Mengurangkan jumlah penggunaan ingatan Pempercepatkan pemprosesan Gandaan panjang aksara – aksara k bit, maka suruhan panjangnya k, 2k, 3k bit
Pertimbangkan bil opkod yang hendak disediakan berbanding saiz lokasi ingatan Panjang suruhan (n + k) bit
N – bit alamat – 2n lokasi ingatan K – bit opkod – 2k operasi berbeza
(k-1) opkod (n+1) alamat Kurangkan ½ bil operasi Tambah 2x bilangan lokasi
Pengindeksan
Operasi dilakukan pada struktur data yang disimpan pada lokasi ingatan yang berturutan
Contoh: 1 blok kata disimpan dalam lokasi A, A+1, A+2, A+3 Jika pindahkan kata tersebut ke lokasi B, B+1, B+2, B+3
Arahannya: Pindah A, B Pindah A+1, B+1 Pindah A+2, B+2 Pindah A+3, B+3
Pengalamatan Timbunan
Kurangkan panjang suruhan (untuk jimatkan penggunaan CPU)
Suruhan hanya mempunyai opkod sahaja, tiada operan
Masukkan kandungan ingatan ke dalam timbunan
Skema Input/Output
4 cara I/O teraturcara
Guna 1 suruhan IN & 1 suruhan OUT I/O Terpacu sampukan
CPU memulakan peranti I/O Dan arahkan peranti I/O sampuk CPU bila peranti telah bersedia
I/O DMA Guna cip DMA untuk kawal peranti I/O DMA – mempunyai 4 daftar tersendiri Keutamaan gunakan bas diberi kepada DMA berbanding CPU
I/O menggunakan saluran data Guna pemproses I/O yang khas – disebut saluran Kurangkan bil sampukan
Paras Bahasa Mesin Pada Mesin 8088
Ruang alamat Boleh mengalamatkan sehingga 220 bait Suruhan dalam 8-bit atau 16-bit Perlu 20 bit untuk mengalamatkan ingatan tapi ada 16 bit sahaja
Guna konsep segmen 4 jenis segmen
Segmen kod Segmen data Segmen timbunan Segmen tambahan
Paras Bahasa Mesin - 8088
Guna 14 daftar 16 bit 1 daftar ada 2 bhg = atas + bawah
Jumlah semua = 28 daftar 8 bit
Set suruhan Guna 1 atau 2 operan
Paras Bahasa Mesin – 80286
Juga mempunyai 14 daftar Mampu kendalikan operasi arithmetik 8 & 16-bit Set suruhan sama seperti 8088 + bbr suruhan tambahan Perbezaan dgn 8088
Guna 2 mod : mod nyata + mod terpelihara
Mod nyata Ingatan linear 1M (sama 8088)
Mod terpelihara Ada 16,348 segmen 1 segmen = 64K 4 daftar segmen
Paras Bahasa Mesin 80386
Mula guna daftar 32 bit 3 mod operasi
Mod nyata Mod terpelihara Mod maya
Juga guna 16,348 segmen tapi bersaiz 4G Kendalikan operasi arithmetik 8, 16 dan 32 bit Set suruhan sama spt 80286 + 3 suruhan tambahan