Upload presentasi
Presentasi sedang didownload. Silahkan tunggu
1
SISTEM BILANGAN DAN REGISTER
Minggu_1
2
SISTEM BILANGAN DAN REGISTER
TUJUAN Mahasiswa mengenal sistem bilangan. Mahasiswa mampu mengkonversikan sistem bilangan. Menampilkan dan membaca isi register. Mengetahui fungsi-fungsi register sebagai pengalamat data.
3
JENIS BILANGAN Didalam pemrograman dengan bahasa assembler, bisa digunakan berbagai jenis bilangan. Jenis bilangan yang bisa digunakan, yaitu: Bilangan biner, oktal, desimal dan hexadesimal. Pemahaman terhadap jenis-jenis bilangan ini adalah penting, karena akan sangat membantu kita dalam pemrograman yang sesungguhnya.
4
BILANGAN BINER Bilangan biner adalah bilangan yang hanya terdiri atas 2 kemungkinan (Berbasis dua), yaitu 0 dan 1. Karena berbasis 2, maka pengkorversian ke dalam bentuk desimal adalah dengan mengalikan suku ke-N dengan 2N. Contohnya: bilangan biner = (0 X 23) + (1 X 22) + (1 X 21) + (1 X 20) = 710.
5
BILANGAN DESIMAL Bilangan desimal adalah bilangan yang terdiri atas 10 buah angka (Berbasis 10), yaitu angka 0-9. Dengan basis sepuluh ini maka suatu angka dapat dijabarkan dengan perpangkatan sepuluh. Misalkan pada angka = (1 X 102) + (2 X 101) + (1 X 100).
6
BILANGAN OKTAL Bilangan oktal adalah bilangan dengan basis 8, artinya angka yang dipakai hanyalah antara 0-7. Sama halnya dengan jenis bilangan yang lain, suatu bilangan oktal dapat dikonversikan dalam bentuk desimal dengan mengalikan suku ke-N dengan 8 N. Contohnya bilangan 128 = (1 X 81) + (2 X 80) = 1010.
7
BILANGAN HEXADESIMAL Bilangan hexadesimal adalah bilangan yang berbasis 16. Dengan angka yang digunakan berupa : 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F. Bilangan hexadesimal mudah dikonversi dengan bilangan yang lain, terutama dengan bilangan biner dan desimal. Karena berbasis 16, maka 1 angka pada hexadesimal akan menggunakan 4 bit.
8
BILANGAN BERTANDA DAN TIDAK
Pada assembler bilangan-bilangan dibedakan lagi menjadi 2, yaitu bilangan bertanda dan tidak. Bilangan bertanda adalah bilangan yang mempunyai arti plus(+) dan minus(-), misalkan angka 17 dan -17. Pada bilangan tidak bertanda, angka negatif(yang mengandung tanda '-') tidaklah dikenal. Jadi angka -17 tidak akan akan dikenali sebagai angka -17, tetapi sebagai angka lain.
10
Konversi Antar Sistem Bilangan
Biner Oktal Hexadesimal Desimal
11
Struktur Register dan Metode Pengalamatan Memori
12
PENGERTIAN REGISTER Register merupakan sebagian memori dari mikroprosesor yang dapat diakses dengan kecepatan yang sangat tinggi. Register adalah sebagian kecil memory komputer yang dipakai untuk tempat penampungan data. Data yang terdapat dalam register dapat diproses dalam berbagai operasi dengan melihat berapa besar kemampuan register tersebut (8 atau 16 bit).
13
PENGERTIAN REGISTER Dalam melakukan pekerjaannya mikroprosesor selalu menggunakan register-register sebagai perantaranya. Jadi register dapat diibaratkan sebagai kaki dan tangan dari mikroprosesor.
14
Penggolongan Register
General Purpose Register Segment Register Pointer Register Index Register Flag Register
15
General Purpose Register
Accumulator Register AX (16 BIT) AX = AH (8 BIT) + AL (8 BIT) Base Register BX (16 BIT) BX = BH (8 BIT) + BL (8 BIT) Counter Register CX (16 BIT) CX = CH (8 BIT) + CL (8 BIT) Data Register DX (16 BIT) DX = DH (8BIT) + DL (8 BIT)
16
Kelompok Register Data:
Terdiri dari 4 buah register 16 bit yaitu: AX, BX, CX dan DX. AX Accumulator BX Base Register CX Counter Register DX Data Register AH AL BH BL CH CL DH DL
17
Register AX merupakan register aritmatik, karena register ini selalu dipakai dalam operasi penambahan, pengurangan, perkalian dan pembagian. Register BX adalah salah satu dari dua register base Addressing Mode yang dapat mengambil atau menulis langsung dari/ke memori. Register CX merupakan suatu counter untuk meletakkan jumlah lompatan pada Loop yang anda lakukan.
18
Register DX mempunyai tiga tugas, yaitu:
Membantu AX dalam proses perkalian dan pembagian, terutama perkalian dan pembagian 16 bit. DX merupakan register offset dari DS DX bertugas menunjukkan nomor port pada operasi port
19
Segment Register Code Segment Register CS (16 bit)
Data Segment Register DS (16 bit) Stack Segment Register SS (16 bit) Extra Segment Register ES (16 bit)
20
Kelompok Register Segment
Terdiri dari 4 buah register 16 bit, yaitu : ES,CS,DS dan SS. Extra Segment Code Segment Data Segment Stack Segment ES CS DS SS
21
Tugas register CS yang penting adalah menunjukkan segment program berada. Pasangan register ini adalah register IP. Tugas register DS dan SS adalah menunjukkan segmen dari segment data dan segment stack. Pasangan dari register DS adalah DX dan register SS adalah SP. Register ES tidak mempunyai tugas, namun berguna untuk pemrograman pada saat melakukan operasi ke segment lain.
22
Kelompok Register Index dan Pointer
Terdiri dari 2 buah register index dan 3 buah register pointer. Stack Pointer Base Pointer Source Index Destination Index Instruction Pointer SP BP SI DI IP
23
Pasangan register IP adalah register CS yang merupakan register terpenting untuk menunjukkan baris perintah program. Pasangan register SP adalah register SS yang digunakan untuk operasi stack. Pada saat program pertama dijalankan register ini akan menunjuk pada byte terakhir stack. Register BP mempunyai fungsi yang sama dengan register BX yaitu dapat menulis dan membaca ke atau dari memori secara langsung.
24
Index Register terdiri dari dua register yaitu register DI dan SI, dimana kedua register ini merupakan register yang dipakai untuk melakukan Operasi String. Kedua register ini sering digunakan untuk menulis dan membaca ke atau dari memori seperti BX dan BP.
25
Flag Register Register 16 bit dengan komposisi sbb : X OF DF IF TF SF
ZF AF PF CF FLAG NILAI BIT 1 NILAI BIT 0 CF CARRY FLAG CARRY NOT CARRY PF PARITY FLAG EVEN PARITY ODD PARITY AF AUXILIARY FLAG ZF ZERO FLAG ZERO NOT ZERO SF SIGN FLAG NEGATIF POSITIF TF TRAP FLAG TRAP NOT TRAP IF INTERUPT FLAG ENABLE DISABLE DF DIRECTION FLAG DECREMENT INCREAMENT OF OVERFLOW FLAG OVERFLOW NOT OVERFLOW Flag operasi aritmatika dan logika : CF, PF, AF, ZF, SF. Flag operasi khusus kerja mikroprosesor : IF, DF, OF, TF.
26
Model Pengalamatan Model pengalamatan adalah cara penulisan instruksi untuk transfer data, dari atau kedalam mikroprosessor. Ada beberapa model pengalamatan : Model Pengalamatan Immediate. Model Pengalamatan Register. Model Pengalamatan Direct. Model Pengalamatan Indirect. Model Pengalamatan String. Model Pengalamatan I/O.
27
Model Pengalamatan Immediate
Instruksi untuk trasnfer data ke memory atau register. Contoh : Mov AL,80H Mov BL,72H Mov [1234H],25H Mov AX,1234H Mov DX,0300H
28
Model Pengalamatan Register
Instruksi untuk trasnfer data antar register. Contoh : Mov AL,BL Mov BH,AL Mov CH,CL Mov AX,BX Mov DX,CX
29
Model Pengalamatan Direct
Instruksi untuk trasnfer data dari atau ke memory dimana alamat memory dituliskan langsung. Contoh : Mov [1234H],80H Mov BL,[3472H] Mov [1234H],AX Mov AX,[1234H]
30
Model Pengalamatan Indirect
Instruksi untuk trasnfer data dari atau ke memory dimana alamat memory ditunjukkan oleh isi dari sebuah register. Contoh : Mov [DI],80H Mov BL,[BP] Mov [DI+1],AX Mov AX,[SI+BX]
31
Model Pengalamatan String
Dalam sistem komputer string adalah sebuah urutan penyimpanan dari byte atau word dalam memory. Prosessor menyimpan text sepanjang string dari karakter ASCII. Contoh : MOVSB
32
Model Pengalamatan I/O
Ada 2 model pengalamatan I/O, yaitu model pengalamatan I/O direct dan indirect. Model Pengalamatan I/O direct digunakan pada I/O yang mempunyai alamat mulai 00H s/d FFH. Model Pengalamatan I/O indirect digunakan pada I/O yang mempunyai alamat mulai 0000H s/d FFFFH. Sebagai tempat untuk menyimpan alamat port adalah register DX.
33
Contoh : Out 7FH,AL ;Out data ke 7FH In AL,8FH ;In data dari 8FH
Mov DX,0303H Mov AL,80H Out DX,AL Mov DX,0302H In AL,DX
34
Arsitektur Processor 8086/8088
Kapasitas memori = 1 MB. Terdapat 1 MB (220) = 1024 sel memori 8 bit, dengan alamat 0 s/d atau H s/d FFFFF H Register-register 16 bit hanya mampu mengalamati memori dari 0 s/d (216 – 1).
35
Metode Pengalamatan Memori
Metode Pengalamatan dengan Dua Register / Pengalamatan Relatif (untuk mendapatkan pengalamatan 220): Segment Register Offset Register
36
Contoh Pengalamatan Relatif
Segment Offset A123 : 009A H Komposisi Bit : = A1BCA H + Alamat Mutlak (physical address)
37
Organisasi Memori Pada arsitektur 8086/88 terdapat peta memori sebagai berikut : Alamat Fisik Keterangan 00000 – 0007F BIOS INTERUPT VEKTOR 00080 – 003FF DOS INTERUPT VEKTOR 00400 – 004FF BIOS DATA AREA 00500 – 005FF DOS & BASIC DATA AREA 00600 – 9CFFF RAM WORKING SPACE A0000 – A3FFF CADANGAN A4000 – AFFFF MONOCHROME ADAPTER B0000 – B1000 VIDEO BUFFER B1001 – B7FFF COLOR/GRAPHICS ADAPTER B8000 – BBFFF BC000 – BFFFF C0000 – C7FFF EKSPANSI MEMORY C8000 – F3FFF HARDDISK CC000 – F3FFF F4000 – F5FFF USER ROM (8 K) F6000 – FDFFF ROM BASIC (32 K) FE000 – FFFFF ROM BIOS (8 K)
38
Pengarang by : RIDWAN M
Presentasi serupa
© 2024 SlidePlayer.info Inc.
All rights reserved.