Manipulasi Bit Dan Logika
Manipulasi Bit Dan Logika
ORGANISASI KOMPUTER
MANIPULASI BIT DAN LOGIKA
Kelas
Nama
NIM
: TEK B PRAKTIKUM 1
: ALIF FURQON
: J3D115024
DAFTAR ISI
DAFTAR ISI...............................................................................................................................i
DAFTAR GAMBAR.................................................................................................................ii
PENDAHULUAN.....................................................................................................................3
1. Tujuan Percobaan...............................................................................................................3
2. Teori Penunjang.................................................................................................................3
2.1. Interrupt dan Register.................................................................................................3
2.2. Tanda Directive...........................................................................................................5
2.3. Manipulasi Bit dan Gerbang Logika...........................................................................6
2.3.1. Gerbang NOT...........................................................................................................6
2.3.2. Gerbang AND..........................................................................................................6
2.3.3. Gerbang OR.............................................................................................................7
2.3.4. Gerbang XOR..........................................................................................................7
2.3.5. Test...........................................................................................................................7
2.3.6. SHL (Shift Left).......................................................................................................8
2.3.7. SHR (Shift Right).....................................................................................................8
3. Listing dan Analisa Tugas..................................................................................................8
3.1.
3.2.
Tugas 4.......................................................................................................................11
3.5.
Tugas 5......................................................................................................................13
4.
Kesimpulan...................................................................................................................16
5. Daftar Pustaka..................................................................................................................16
1|LaporanPraktikumOrganisasiKomputer&Bahasa
Assembl y
DAFTAR GAMBAR
Gambar 1 Codingan Tugas 1 .............................................................................................. 8
Gambar 2 Hasil Register HSL Tugas 1 .............................................................................. 8
Gambar 3 Hasil Register HSR Tugas 1 .............................................................................. 9
Gambar 4 Codingan HSL Tugas 2 ...................................................................................... 9
Gambar 5 Hasil Register HSL Tugas 2 ............................................................................. 10
Gambar 6 Codingan HSR Tugas 3 .................................................................................... 10
Gambar 7 Hasil Register HSR Tugas 3 ............................................................................. 11
Gambar 8 Codingan Tugas 4 ............................................................................................. 11
Gambar 9 Hasil Register OR AL dan BL Tugas 4 ............................................................ 12
Gambar 10 Hasil Register OR CL dan DL Tugas 4 .......................................................... 12
Gambar 11 Hasil Register XOR AL dan CL Tugas 4 ....................................................... 13
Gambar 12 Codingan Tugas 5 ........................................................................................... 13
Gambar 13 Hasil Register SHR Tugas 5 ........................................................................... 14
Gambar 14 Hasil Register SHL Tugas 5 ........................................................................... 14
Gambar 15 Hasil Register OR Tugas 5 ............................................................................. 15
Gambar 16 Hasil Register XOR Tugas 5 .......................................................................... 15
PENDAHULUAN
1. Tujuan Percobaan
1) Mengetahui dan memahami syntax yang dalam pembuatan program
operasi aritmatika yang lebih banyak menggunakan operasi-operasi
logikal.
2|LaporanPraktikumOrganisasiKomputer
2)
2. Teori Penunjang
2.1. Interrupt dan Register
Interrupt
atau
sering
kali
disebut
dengan
intruksi
merupakan
handler-nya dip roses ke memori oleh DOS pada saat DOS digunakan. Lokasi
Interrupt Vector Table-nya ada di alamat absolute 07h-3FFh.
Register merupakan sebaguan memori dari microprocessor yang dapat diakses
dengan kecepatan yang sangat tinggi. Register ini merupakan perantara yang selalu
digunakan oleh microprocessor untuk melakukan pekerjaannya. Register yang digunakan
oleh microprocessor dibagi menjadi 5 bagian sesuai dengan tugasnya, keliama bagian
tersebut adalah:
1) Segmen Register yang terdiri atas CS (Code Segment), DS (Data Segment), ES (Extra
Segment), dan SS (Stack Segment).
3|LaporanPraktikumOrganisasiKomputer&Bahasa
Assembl y
2) Pointer dan Index Register yang terdiri dari SP (Stack Pointer), BP (Base Pointer), SI
(Source Index), dan DI (Destination Index).
3) General Purpose Register yang terdiri atas AX, BX, CX dan DX yang masing-masingnya
terdiri atas 16 bit. Pada setiap bagian register ini, terdapat 2 bagian yaitu H yang menandai
High dan L yang menandai Low. High ini menandai 8 bit pada posisi akhir register dan Low
menandai 8 bit pada posisi awal register. Pada register-register ini biasanya digunakan dalam
berbagai keperluan, tetapi dapat digunakan pula dalam kondisi-kondisi khusus seperti:
a. Register AX, biasanya digunakan dalam operasi aritmatika terutama dalam operasi
pembagian dan pengurangan.
b. Register BX, pada umumnya digunakan untuk menunjukkan suatu alamat offset dari suatu
segmen.
c. Register CX, biasanya digunakan pada operasi looping (perulangan) dimana pada register ini
menunjukkan banyaknya looping yang akan terjadi pada sebuah program.
d. Register DX, digunakan secara khusus untuk menampung sisa hasil pembagian 16 bit.
4) Index Pointer Register merupakan register IP yang berpasangan dengan CS (CS:IP) berufngsi
untuk menunjukkan alamat pada memori tempat dari intruksi (perintah) selanjutnya yang
akan diseksekusi.
5) Flags Register merupakan register yang menunjukkan kondisi dari sebuah keadaan. Kondisi
keadaan ini mengembalikan nilai ya atau tidak, 0 atau
1. Pengecekan suatu kondisi dengan nilai balikan ya atau tidak disebut
dengan fungsi Boolean. Setiap keadaan pada flags register ini hanya terpakai
1 bit saja, maka untuk satu flags register ini masing-maisng dapat menyimpan
16 keadaan (16 bit). Flags Register ini terdiri atas OF (OverFlow Flag), SF
(Sign Flag), ZF (Zero Flag), CF (Carry Flag), PF (Parity Flag), DF
(Direction Flag), IF (Interrupt Enable Flag), TF (Trap Flag), AF (Auxiliary
Flag), NT (Nested Task) dan IOPL (I/O Protection Level).
3) MEDIUM, data yang digunakan oleh program kurang dari 64 KB tetapi code yang digunakan
bisa lebih dari 64 KB.
4) COMPACT, data yang digunakan bisa lebih besar dari 64 KB tetapi codenya kurang dari 64
KB.
5) LARGE, data dan code yang dipakai oleh program bisa lebih dari 64 KB.
6) HUGE, data maupun code array yang digunakan bisa lebih dari 64 KB.
2.2.2. .CODE
Tanda directive yang digunakan untuk memberikan pemberitahuan
mengenai code segmentnya. Code segment ini digunakan untuk menyimpan
program yang akan dijalankan.
2.2.3. .ORG 100h
Tanda directive ini sering digunakan pada program COM. Perintah ini
digunakan untuk memberitahukan kepada assembler supaya program pada saat
dijalankan ditaruh mulai pada offset ke 100h (256) byte. Dapat diartikan juga
bahwa kita menyediakan 100h byte kosong pada saat program dijalankan.
Program kosong ini nantinya akan ditempati oleh PSP (Program Segment Prefix).
2.2.4. .JMP
Perintah JMP digunakan untuk melompat menuju tempat yang
ditunjukkan oleh perintah JUMP.
Syntax:
JUMP Tujuan
2.2.5. INT 20h
Perintah ini digunakan untuk megakhiri program dan menyerahkannya
kembali ke DOS.
NOT A
0
Tabel 1 Nilai Kebenaran Operasi NOT
A AND B
2.3.3. Gerbang OR
Operator logika OR akan menghasilkan nilai nol apabila kedua
inputannya bernilai nol, dan akan bernilai satu apabila salah satunya dari
nilai yang di inputkan bernilai satu. Berikut ini adalah cara penggunaan
syntax dari gerbang OR :
OR Tujuan,Sumber
Dibawah ini adalah table kebenaran dari gerbang OR :
6|LaporanPraktikumOrganisasiKomputer
A OR B
A OR B
2.3.5. Test
Perintah Test digunakan untuk mengetahui nilai pada suatu bit, dengan
syntax :
TEST Operand1,Operand2
2.3.6. SHL (Shift Left)
Operator SHL akan menggeser operand1 ke kiri sebanyak operand2
secara per bit. Kemudian bit kosong yang telah tergeser di sebelah kanannya
akan diberi nilai nol. Berikut adalah cara penggunaan syntax dari SHL :
SHL Operand1,Operand2
7|LaporanPraktikumOrganisasiKomputer&Bahasa
Assembl y
9|LaporanPraktikumOrganisasiKomputer&Bahasa
Assembl y
3.3.
10 | L a p o r a n P r a k t i k u m O r g a n i s a s i K o m p u t e r
Gambar diatas merupakan kodingan dan juga hasil kodingan dari nilai
register ax, bx, cx, dan dx dimana nilainya adalah 0fedch kemudian register
tersebut di lakukan operasi HSR sebanyak 8 bit ke kanan sehingga hasil
register ax, bx, cx, dan dx dari pergeseran sebanyak 8 bit tersebut adalah
bernilai register 00feh.
3.4.
Tugas 4
11 | L a p o r a n P r a k t i k u m O r g a n i s a s i K o m p u t e r & B a h a s a
Assembl y
12 | L a p o r a n P r a k t i k u m O r g a n i s a s i K o m p u t e r
3.5. Tugas 5
13 | L a p o r a n P r a k t i k u m O r g a n i s a s i K o m p u t e r & B a h a s a
Assembl y
14 | L a p o r a n P r a k t i k u m O r g a n i s a s i K o m p u t e r
4. Kesimpulan
Dari program-program diatas merupakan program pengimplementasian dari fungsi
gerbang logika AND, OR, XOR dan NOT. Implementasian nilai yang dari fungsi
gerbang logika tersebut selanjutnya akan ditampung pada variabel yang sudah
didefinisikan sebelumnya. Sehingga, program diaras merupakan implementasi dari
fungsi operasi logika dan penggunaan fungsi variabel dalam assembly.
5. Daftar Pustaka
Novianty, Inna. Siskandar, Ridwan. Galih Novita 2015. MODUL PRAKTIKUM
ORGANISASI KOMPUTER. Bogor
16 | L a p o r a n P r a k t i k u m O r g a n i s a s i K o m p u t e r