FAKULTAS ILMU KOMPUTER UNIVERSITAS PUTRA INDONESIA”YPTK” PADANG PEMROGRAMAN SISTEM SISTEM KOMPUTER FAKULTAS ILMU KOMPUTER UNIVERSITAS PUTRA INDONESIA”YPTK” PADANG
ARITMETIKA KOMPUTER Jenis-jenis Aritmetika Komputer PEMROGRAMAN SISTEM ARITMETIKA KOMPUTER Jenis-jenis Aritmetika Komputer Komputer digital pasti melakukannya dengan aritmetika biner, walaupun pemakai menggunakan sistem bilangan desimal maka dapat dipastikan sistem desimal ini diubah dalam bilangan biner oleh komputer sebelum melakukan operasi-operasi aritmatika.
PEMROGRAMAN SISTEM Bilangan desimal direpresentasikan dalam bentuk BCD ( Binary Coded Decimal). Aritmatika desimal mempunyai 2 kelemahan: 1. Hardware untuk aritmatika desimal komplek dan mahal 2. Sistem bilangan BCD tidak efisien dalam menggunakan kombinasi bit biner-ada beberapa yg tidak terpakai. Aritmatika biner tidak tetap (fixed-point) terdapat pada hampir semua komputer.
Komponen-Komponen Hardware PEMROGRAMAN SISTEM Komponen-Komponen Hardware 1. GATE adalah sirkuit logika yang melakukan suatu fungsi pada masukan masukan dan menghasilkan sebuah keluaran. Jenis-jenis gate berdasarkan fungsi logikanya adalah NOT, OR, AND, Exclusive OR, dan sebagainya
PEMROGRAMAN SISTEM
PEMROGRAMAN SISTEM
PEMROGRAMAN SISTEM
PEMROGRAMAN SISTEM
PEMROGRAMAN SISTEMAL
PEMROGRAMAN SISTEMAL
PEMROGRAMAN SISTEMAL
PEMROGRAMAN SISTEMAL
PEMROGRAMAN SISTEMAL
PEMROGRAMAN SISTEM
PEMROGRAMAN SISTEM 2. FLIP FLOP adalah sebuah media penyimpanan biner satu bit (memori satu bit) yang dapat menyimpan 0 dan 1. Keluaran Flip Flop dapat berubah jika diberikan pemicu sinyal clock. Jenis Flip Flop misalnya adalah Flip Flop RS, Flip Flop D, Flip Flop JK dan Flip Flop T.
PEMROGRAMAN SISTEM 3. LATCH merupakan flip flop logika yang mengunci status sinyal: sinyal gate mengontrol pembukaan atau penutupan latch. Latch digunakan untuk mengambil suatu kondisi sebelum kondisi tersebut hilang guna keperluan yang akan datang. 4. REGISTER adalah sekumpulan flip flop dengan masukan clock bersama. Register digunakan untuk penyimpanan atau menahan sementara word di dalam pemrosesan (oprasi aritmatika)
PEMROGRAMAN SISTEM 5. SHIFT REGISTER adalah jenis register yang berfungsi untuk melakukan pergeseran bit bit di dalam register. Pergeseran dilakukan ke kiri atau ke kanan per bit setiap masukan sinyal kontrol. 6. COUNTER berfungsi dalam pencacahan masukan-masukan pulsa clock, pencacahan dapat dilakukan secara menaik atau menurun. Counter digunakan dalam operasi aritmatika dan operasi- operasi kontrol.
PEMROGRAMAN SISTEM 7. MULTIPLEXER berfungsi untuk memilih salah satu dari beberapa input ke bagian output sesuai dengan sinyal kontrol selector. Multiplexer disebut juga data selector. 8. DEMULTIPLEXER. berfungsi mengirim input ke salah satu dari beberapa output sesuai dengan sinyal kontrol selector. Demultiplexer disebut juga data distributor. Demultiplexer beguna untuk konversi serial ke parallel.
PEMROGRAMAN SISTEM 9. DECODER berfungsi sebagai identifikasi atau penetapan pola pada n input dengan mengaktifkan salah satu dari 2n ouput sesuai angka input. Decoder digunakan sebagai pendekodeaan instruksi, alamat dan perintah (command). 10. ENCODER merupakan kebalikan dari decoder. Encoder mempunyai sejumlah saluran input dan hanya salah satu yang diaktifkan pada satu waktu dan menghasilkan kode output sebanyak n-bit bergantung pada input yang aktif.
PEMROGRAMAN SISTEM DATA REPRESENTATION Data Type Binary informasi dalam digital komputer adalah dikirim dalam memory atau processor Register Informasi kontrol adalah bit/ kelompok bit yang digunakan untuk urutan-urutan sinyal yang spesifikasi yang dibutuhkan untuk manipulasi data dan register lain.
Sistem Bilangan: 1. Bilangan Biner: Bilangan Basis 2 ( 0 dan 1) PEMROGRAMAN SISTEM Sistem Bilangan: 1. Bilangan Biner: Bilangan Basis 2 ( 0 dan 1) 2. Bilangan Oktal: Bilangan Basis 8 (0-7) 3. Bilangan Desimal: Bilangan Basis 10 (0-9) 4. Bilangan Hexadesimal: Bilangan Basis 16 (0-9, A-F)
PEMROGRAMAN SISTEM
PEMROGRAMAN SISTEM
PEMROGRAMAN SISTEM
PEMROGRAMAN SISTEM
PEMROGRAMAN SISTEM
PEMROGRAMAN SISTEM
PEMROGRAMAN SISTEM
PEMROGRAMAN SISTEM
PEMROGRAMAN SISTEM
PEMROGRAMAN SISTEM
PEMROGRAMAN SISTEM
PEMROGRAMAN SISTEM
PEMROGRAMAN SISTEM
PEMROGRAMAN SISTEM
PEMROGRAMAN SISTEM
PEMROGRAMAN SISTEM
PEMROGRAMAN SISTEM
PEMROGRAMAN SISTEM
PEMROGRAMAN SISTEM
PEMROGRAMAN SISTEM
PEMROGRAMAN SISTEM
PEMROGRAMAN SISTEM
Latter (huruf alphabet) Simbol/diskrit PEMROGRAMAN SISTEM Tipe Data Number (bilangan) Latter (huruf alphabet) Simbol/diskrit Semua tipe data kecuali no biner direpresentasikan diregister komputer menjadi form code biner.
PEMROGRAMAN SISTEM Complement digunakan dalam register komputer untuk mempermudah operasi dasar untuk memanipulasi logika. Integer positif biasanya direpresentasikan sebagai bilangan yang tak dikenal untuk representasikan integer negatif, kita membutuhkan masukan untuk nilai negatif. Di dunia nyata bilangan negatif di indikasikan dengan tanda minus dan plus karena keterbatasan hardware, komputer harus mempresentasikan apapun dengan 1 dan 0 termasuk bilangan bertanda sebagai kesekuensinya, mempresentasikan yang bertanda tersebut dengan menandakan 1 bit diposisi paling kiri bilangan kesempatan deengan membuat bit tanda sama dengan 0 untuk posisi 1 untuk negatif.
PEMROGRAMAN SISTEM Ex: 13 desimal= 1101 dalam biner Karena terbagi 8 bagian maka menjadi 0000 1101 +13 = 0 0001101 komplemen satu 1111 0010 +1 komplemen dua 1111 0011 -13 = 1111 0011
PEMROGRAMAN SISTEM UNIT ARITMETIK DAN LOGIKA Unit aritmetik dan logika (arithmetic-logic unints, di singkat ALU) merupakan bagian pengolah bilangan dari sebuah komputer. 1. PENJUMLAHAN BINER ALU tidak emproses bilangan desimal, melainkan bilangan biner. 0 + 0 = 0 0 + 1 = 1 1 + 0 = 1 1 + 1 = 10 keterangan 1 adalah carry 1 + 1 + 1 = 11 keterangan 1 adalah carry
PEMROGRAMAN SISTEM Ex: 11100 + 11010 = 110110 01010111 + 00110101 = 10001100 57 H+ 35 H = 8C
PEMROGRAMAN SISTEM 2. PENGURANGAN BINER 0 – 0 = 0 1 – 0 = 1 1 – 1 = 0 10 – 1 = 1 EX: 7 – 5 = 2 sama 111 – 10 1 = 010 13 – 10 = 3 sama 1101 – 10 10 = 0011
PEMROGRAMAN SISTEM 3. PENJUMLAHAN PARUH Sebuah penjumlahan paruh (half adder). Keluaran SUM adalah A XOR B dan keluaran CARRY adalah A AND B. SUM = 1 jika A dan B berbeda, CARRY = 1 jika A dan B masing – masing sama dengan 1. Bila: A dan B = 0, SUM = 0 dan CARRY = 0 A = 0 dan B = 1, SUM = 1 dan CARRY = 0 A = 1 dan B = 0, SUM = 1 dengan CARRY = 0 A = 1 dan B = 1, SUM = 0 dengan CARRY = 1
PEMROGRAMAN SISTEM
PEMROGRAMAN SISTEM
PEMROGRAMAN SISTEM
PEMROGRAMAN SISTEM
PEMROGRAMAN SISTEM 4. PENJUMLAHAN PENUH Penjumlahan penuh (full adder) yaitu rangkaian logika yang dapat menjumlahkan 3 bit.
PEMROGRAMAN SISTEM
PEMROGRAMAN SISTEM
PEMROGRAMAN SISTEM
PEMROGRAMAN SISTEM Type Data Binary informasi dalam komputer digital yaitu di kirim dalam memory atau processor register. Informasi kontrol adalah bit/ kelompok bit bit digunakan untuk urutan sinyal yang spesifik yang dibutuhkan untuk manipulasi data. Type data: 1. Number (bilangan) 2. Latter (huruf alphabet) 3. Simbol / diskrit Semua type data, kecuali biner dipresentasikan diregister komputer menjadi form code biner
PEMROGRAMAN SISTEM Mnemonic - SUB = Subtract - Mov - JNE = Jump Not Equal - HLT = Halt - Add A = 41 H (ASCII) = 0100 0001 a = 61 H = 0110 0001 - Mul = Multiply
PEMROGRAMAN SISTEM Complement Complement digunakan dalam register komputer untuk mempermudahkan operasi dasar dan untuk manipulasi logikal. Integer positif = biasa direpresentasikan sebagai bilangan yang tidak dikenal, untuk representasikan integer negatif kita membutuhkan masukan untuk nilai- nilai negatif. Ex: + 13 sign 13 unsign - 13 sign
PEMROGRAMAN SISTEM Didunia nyata bilangan negatif di indikasikan dengan tanda minus, positif (plus) karena keterbatasan hardware. Komputer harus mempresentasikan apapun dengan 1 dan 0 termasuk bilangan bertanda sebagai kesekuensinya. Mempresentasikan yang bertanda tersebut dengan 1 bit di posisi paling kiri, kesepakatan posisi 1 untuk negatif. EX: 13 dalam desimal = 1101 dalam biner Karena register terbagi 8 bagian maka menjadi: 0000 1101 +0000 1101 0000 1101 komplemen satu 1111 0010 tambah satu 1 komplement dua 1111 0011
PEMROGRAMAN SISTEM Langkah complement dua (2’s): 1. Lakukan 1’s (one’s) complement yaitu membalik angka 0 menjadi 1 atau angka 1 menjadi 0 2. Lakukan 2’s complement yaitu tambahkan 1 dari hasil 1’s complement 1’s digunakan untuk pembalik namun tidak bisa menggunakan gerbang not melainkan gerbang exor input sama sama 0 dan 1 maka ouput 0 input satu 0 dan satu 1 atau sebalik nya itu output 1
PEMROGRAMAN SISTEM Kode Biner: - Data huruf akan dirubah menjadi kode ASCII - Dari kode ASCII dirubah menjadi bilangan biner. - Data gambar merupakan kumpulan dari angka angka yang merupakan perwakilan dari warna masing-masing titik/pixel dan angka tersebut yang dirubah dalam bentuk biner. - Semua data yang di presentasikan dan ditulis dalam bentuk 0 dan 1
PEMROGRAMAN SISTEM Komputer secara elektronika hanya mampu membaca 2 kondisi: - Ada sinyal atau tegangan - Tidak ada sinyal dan tidak ada tegangan arus listrik yang mengalir - Dua kondisi tersebut yang digunakan untuk mempresentasikan bilangan dan kode kode biner 1. Level tinggi (ada tegangan) sebagai presentasi bilangan 1 2. Level rendah (tidak ada arus) sebagai representasi bilangan 0 Ex: 13 dalam hexadesimal = 1101 = HHLH H = ada arus L = tidak ada arus
Register Transfer and Microoperation PEMROGRAMAN SISTEM Register Transfer and Microoperation Register Transfer Language Microoperation adalah suatu operasi yang akan mengeksekusi data yang mana disimpan dalam register. Suatu microoperation menyediakan informasi yang disimpan dalam satu atau lebih register, hasil dari operasi ditempatkan sebagai informasi biner dari suatu register atau di sebagai contoh operasi adalah “shift”, count, clear and load
PEMROGRAMAN SISTEM 2. Register Transfer adalah dirancang menggunakan kapital, kadang kadang dilakukan dengan angka yang merupakan fungsi dari register. Register yang berfungsi menyediakan untuk alamat adalah dinamakan Address memory MAR simbol register yang menyediakan address memory PC simbol register yang menyediakan program counter IR (intruction register) RI (Proces)sor register
PEMROGRAMAN SISTEM Isi dari register 1 ditransfer ke register 2: R2←R1 istilah di pembacaan dari register. Fungsi special register : MAR, PC, IR Fungsi general register : R1, R2…… A, B, C, D
Beberapa macam register: PEMROGRAMAN SISTEM Beberapa macam register: Register 8 bit (AH, BH, CH, DH, AL, BL, CL, DL) Register 16 bit (AX, BX, CX, DX, SI, DI, SP, BP) Regiter 32 bit (EAX, EBX, ECX, EDX, ESI, EDI, ESP, EBP) Register 64 bit yang dibentuk dari 32 bit secara berpasangan, register 8 bit, 16, 32 merupakan register untuk penggunaan umum (general pupose register) Register 64 bit biasanya untuk operasi floating point Register segmen (CS, DS, ES, SS, FS, GS)
PEMROGRAMAN SISTEM Simbol Descripton ex Latters (add numeral) Denotes register MAR, R2 Parentheses ( ) a part a register R2(0-7), R2(L) Arrow← transfer of insert R2←R1 Comma , separates two microoperation R2←R1, R1←R2
PEMROGRAMAN SISTEM EX: R1 = 11001101 R2 = 0010011000100111 R3 = 0011011100110010 Tentukan isi register R1, R2, R3 jika terdapat microoperation sebagai berikut: R3←R1 jawaban 000000011001101 R3←R2, R2←R1 jawaban: R3←R2 0010011000100111 R2←R1 0000000011001101 3. R2←R3 (L) 0000000000110010 4. R3←R2 (L) 0010011000000000
PEMROGRAMAN SISTEM Bus dan memory Transfer Struktur dari bus terdiri dari 1 set common bus, masing-masing jalur dalam set 1 bit dari suatu register yang mana informasi biner ditransfer satu waktu. Control sinyal kendali menentukan register mana yang dipilih bus yang akan ditransferkan, satu cara mengkonsumsikan suatu sistem bus adalah dengan multiplexer, multiplexer memilih register sumber yang register informasi binernya ditempatkan pada bus. Multiplexer adalah rangkaian dengan banyak masukan atau keluaran dan n input select.
PEMROGRAMAN SISTEM Contoh: Suatu komputer digital mempunyai sistem bus register 16 bit dengan 32 bit: a. berapa banyak input select : input/masukan 16 2n = 16→n = 4 input select b. berapa ukuran multiplexer yang dibutuhkan? 16x1= 16 c. berapa banyak multiplexer di bus? 32
PEMROGRAMAN SISTEM Content dari register C ditempatkan di bus dan kontent di bus tersebut dijalankan dalam R1 dengan mengaktifkan input kontrol. R1←C Isi register ada alamat AR di transferkan ke DR read: DR←M (AR) Transfer operasi penerusan suatu content dalam data register pada memory word M diselesaikan oleh alamat operasi penerusan bisa disimbolkan sebagai: Write : M ( AR)←R1
PEMROGRAMAN SISTEM Arithmetic Microoperation Symbolic designation R3←R1+R2 content of R1 plus R2 transferred to R3 R3←R1-R2 content of R1 minuss R2 transferred to R3 R2←R2’ complement the content of R2 R2←R2’+1 2’s complement the content of R2 R3←R1+R2’+1 R1 plus the 2’s complement of R2 R1←R1+1 Increment the content of R1 by one R1←R1-1 decrement the content of R1 by one
PEMROGRAMAN SISTEM Ex: R1 = 21 (10) = 00010101 (2) R2 = 13 (10) = 00001101 (2) R1+R2 Rangkaian adder (penjumlahan ) : rangkaian full adder R1= 00010101 = A7, A6, A5, A4, A3, A2, A1, A0 R2 = 00001101 = B7, B6, B5, B4, B3, B2, B1, B0 HASIL: C7, S7 ,S6, S5, S4, S3, S2, S1, S0 000100010 = 34 (10)