1 Logic and Computer Design Fundamental Chapter 1 Digital and Computer Information M. Mano & Charles R. Kime 2008, Pearson Education, Inc
2 Overview Sistem Komputer dan Sistem Digital Representasi Informasi Sistem Bilangan [biner, oktal dan heksadesimal] Operasi Aritmatik Dasar Konversi Kode Desimal [BCD (binary coded decimal), parity] Kode Gray Kode Alphanumeric
3 Sistem Digital Mengambil satu set informasi diskrit inputs dan informasi diskrit internal (system state) dan menghasilkan satu set informasi diskrit outputs. System State Discrete Information Processing System Discrete Inputs Discrete Outputs
4 Tipe2 dari sistem digital Tanpa kondisi (No state present) –Sistem Logika kombinasi –Output = Fungsi (Input) Dengan kondisi(State present) –Kondisi di-updated pada waktu diskrit => Sistem Urutan Synchronous –Kondisi di-updated setiap waktu => Sistem Urutan Asynchronous –Kondisi/keadaan = Function (Keadaan, Input) –Output = Fungsi (Keadaan) atau Fungsi Keadaan (Keadaan, Input)
5 Contoh Sistem Digital: Penghitung Digital (Digital Counter (e. g., odometer): Count Up Reset Inputs: Count Up, Reset Outputs:Visual Display State: "Value" of stored digits Synchronous or Asynchronous?
6 Contoh Komputer Digital Synchronous or Asynchronous? Inputs: Keyboard, mouse, modem, microphone Outputs: CRT, LCD, modem, speakers Memory Control unit Datapath Input/Output CPU
7 Sinyal Suatu variabel informasi yang dinyatakan dengan besaran fisik. Untuk Sistem digital, variabel diambil pada nilai diskrit. Dua level, atau nilai biner yang umum dipakai sebagai nilai pada sistem digital. Nilai Biner dinyatakan dengan : – digits 0 and 1 – words (symbols) False (F) and True (T) – words (symbols) Low (L) and High (H) – and words On and Off. Nilai biner dapat juga dinyatakan dalam nilai atau range dari kwantitas fisik.
8 Sebutkan physical quantities yang lain yang menyatakan 0 and 1? –CPU Voltage –Disk –CD –Dynamic RAM Nilai Biner: Kwantitas fisik yang lain Magnetic Field Direction Surface Pits/Light Electrical Charge
Kedepan….Sistem Embedded Komputer sebagai bagian integral dari produk yang lain. Contoh dari komputer embedded –Microcomputers –Microcontrollers –Digital signal processors Chapter 1 9
Sistem Embedded Contoh dari Aplikasi Sistem Embedded –Cell phones –Automobiles –Video games –Copiers –Dishwashers –Flat Panel TVs –Global Positioning Systems Chapter 1 10
Embedded systems overview Sistem komputasi ada di-mana-mana. Umumnya orang hanya berpikir tentang komputer “desktop” –PC’s –Laptops –Mainframes –Servers Tetapi ternyata ada sistem yang lain dari tipe komputasi Sejauh ini yang lebih dikenal….....
Sistem Komputasi Embedded –Computing systems embedded within electronic devices –Hard to define. Nearly any computing system other than a desktop computer –Billions of units produced yearly, versus millions of desktop units –Perhaps 50 per household and per automobile Computers are in here... and here... and even here... Lots more of these, though they cost a lot less each.
Sebagian daftar dari Sistem embedded. Daftar ini akan berlanjut terus…sesuai perkembangan Anti-lock brakes Auto-focus cameras Automatic teller machines Automatic toll systems Automatic transmission Avionic systems Battery chargers Camcorders Cell phones Cell-phone base stations Cordless phones Cruise control Curbside check-in systems Digital cameras Disk drives Electronic card readers Electronic instruments Electronic toys/games Factory control Fax machines Fingerprint identifiers Home security systems Life-support systems Medical testing systems Modems MPEG decoders Network cards Network switches/routers On-board navigation Pagers Photocopiers Point-of-sale systems Portable video games Printers Satellite phones Scanners Smart ovens/dishwashers Speech recognizers Stereo systems Teleconferencing systems Televisions Temperature controllers Theft tracking systems TV set-top boxes VCR’s, DVD players Video game consoles Video phones Washers and dryers
Tiga kunci teknologi sistem embedded. Teknologi Suatu penyelesaian tugas/pekerjaan terutama dengan menggunakan technical processes, metode2, atau pengetahuan Tiga kunci teknologi sistem embedded. –IC technology –Processor technology –Design technology
15 Representasi Sistem Bilangan Radix Positif, positional sistem bilangan Suatu bilangan dengan radix r adalah menyatakan untaian dari digit: A n - 1 A n - 2 … A 1 A 0. A - 1 A - 2 … A - m 1 A - m yang mana 0 A i < r dan. Adalah titik radix Untaian digit menyatakan urutan pangkat. (Number) r = j = - m j j i i = 0 i rArA (Integer Portion) + (Fraction Portion) i = n - 1 j = - 1
16 Contoh – Sistem Bilangan UmumDesimalBiner Radix (Basis)r102 Digits0 => r - 10 => 90 => Pangkat dr 4 Radix r 0 r 1 r 2 r 3 r 4 r 5 r -1 r -2 r -3 r -4 r , ,
17 Pangkat Spesial dari 2 2 10 (1024) is Kilo, denoted "K" 2 20 (1,048,576) is Mega, denoted "M" 2 30 (1,073, 741,824)is Giga, denoted "G"
18 Berguna sebagai dasar konversi. ExponentValue ExponentValue , , , , , , , , , ,048, ,097, Pangkat Positif dari 2
19 Decimal (Base 10) Binary (Base 2) Octal (Base 8) Hexadecimal (Base 16) A B C D E F Bagus…sebagai bahan pengingat. Angka dengan dasar/basis yang berbeda
20 Hubungan pada Sistem Bilangan Sifat-sifat Sistem Desimal : a.Terdiri dari 10 bilangan pokok b.Pangkat terkecil (0), makin kekiri bertambah dengan 1 c.Koefisien : 0,1,….10 d.Jika dalam satu kolom koefisien melebihi bil dasarnya pindah kekiri dengan penambahan 1
21 Hubungan penting yang harus diingat : Satu bilangan Oktal terdiri dari 3 bil biner Satu bilangan Heksadesimal terdiri dari 4 bil biner Hubungan dapat digambarkan sbb :
22 CARA MENGUBAH DARI MASING-MASING SISTEM BILANGAN : 1. Desimal ke Biner : Integer : Dibagi dengan 2 berturutan dan masing- masing sisanya merupakan bagian bil biner tersebut. Contoh : 11/2 Contoh : 11/2 5 sisa 1 5/2 2 sisa 1 (1011) 2 2/2 1 sisa 0 Pecahan : Dikalikan dengan 2 berturutan dan bil bulatnya merupakan bil biner
23 Contoh : 0,8125 x 2 = 1,6250 Contoh : 0,8125 x 2 = 1,6250 1 0,6250 x2 = 1,2500 1 0,2500x 2 = 0,5000 0 (1101) 2 0,5000x2 = 1,0000 1 Jadi : (11,8125 ) 10 = ( 1011,1101) 2 2. Biner ke Desimal Integer : Masing-masing bilangan biner dikalikan 2 dengan pangkat paling belakang = 0 sedang makin kekiri bertambah dengan 1 Contoh : (100110) 2 = (-----) 10
24 (100110) 2 = 1x x2 4 +0x2 3 +1x2 2 +1x2 1 +0x2 0 = = 38 Pecahan : Masing-masing bil biner dikalikan 2, dan pamgkatnya paling depan = 0, makin kekanan berkurang dengan 1 Contoh : (0.1101) 2 + (………….) 10 (0.1101) 2 = 0x2 0 +1x x x x2 -4 = 0,5 + 0,25 + 0,0625 = 0,8125
25 3. Oktal ke Biner: Masing-masing bil diterjemah- kan dalam biner dan tiap bilangan harus terdiri dari 3 bil biner Contoh : (7314) (111) (011) (001) (100) ( ) 2 4. Desimal ke Oktal : Analog dengan butir 1 dengan bil dasar 8 5. Oktal ke Desimal : Analog dengan butir 2 dengan bil dasar 8
26 Untuk Heksadesimal ke Biner, Desimal ke Heksadesimal serta Heksadesimal ke Desimal Analog dengan butir 3,4,5 CARA PERHITUNGAN PADA SISTEM BINER: Penjumlahan : Contoh : 0+1 = yang ditambah 0+0 = penambah 1+0 = Jumlah 1+1 = (1) 0 Pengurangan : analogi dengan penjumlahan hanya ada ‘pinjaman’ bila diperlukan
27 Contoh : Yang dikurang Pengurang Selisih Perkalian : Yang dikalikan Pengali Hasil perkalian
28 Untuk mengkonversi ke desimal, gunakan aritmatika desimal untuk membentuk: (digit × respective power of 2). Example:Convert to N 10 : Konversi Biner ke Desimal
29 Metode ke-1 –Subtract the largest power of 2 that gives a positive remainder and record the power. –Repeat, subtracting from the prior remainder and recording the power, until the remainder is zero. –Place 1’s in the positions in the binary result corresponding to the powers recorded; in all other positions place 0’s. Example: Convert to N 2 Konversi Desimal ke Biner
30 Dasar Umum sistem bilangan Nama Radix Digits Biner 2 0,1 Oktal 8 0,1,2,3,4,5,6,7 Desimal 10 0,1,2,3,4,5,6,7,8,9 Heksadesimal 16 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F Enam huruf (penambahan dari angka integer 10) dalam heksadesimal menyatakan: A – F =
31 Konversi antar Dasar (basis) Metode 2 Untuk mengkonversi dari satu basis ke yang lain. 1) Konversikan bag integer 2) Konversikan bag pecahan 3) Gabung kedua hasil dengan radix point
32 Konversi secara detail Mengkonversi bag integer. Berulang bagilah angka dengan radix yang baru dan simpan sisanya.Digit dengan radix baru adalah sisa yang didapat dengan di-urutkan berlawanan. Bila radix yang baru > 10, kemudian konversikan semua sisa > 10 ke digit A, B, … Mengkonversi bag integer.pecahan Berulang kalikan bag pecahan dengan radix yang baru dan simpan hasil yang integer. Digit untuk radix yang baru adalah digit integer sesuai urutan. Apabila radix yang baru > 10, kemudian konversikan integer> 10 ke digit A, B, …
33 Contoh: Konversikan ke basis 2 Konversikan 46 ke basis 2 Konversikan ke basis 2 : Gabungkanlah hasilnya dengan radix point:
34 Keterangan Tambahan- Bag Pecahan Catatan bahwa dalam mengkonversi, bag pecahan akan menjadi 0 sebagai hasil dari pengulangan Umumnya, bisa terjadi tetapi bisa juga tidak terjadi. Contoh:Konversikan ke N 2 –0.65 = … –Bag pecahan akan berulang setiap 4 step dan mengulang 1001 selamanya! Penyelesaian: Pastikan jumlah bit yang benar, bulatkan atau hilangkan yang lain.
35 Mengecek hasil konversi Untuk mengkonversi balik,jumlahkan perkalian digit dengan pangkat yang sesuai dari r. Dari konversi yang lalu: = 1·32 + 0·16 +1·8 +1·4 + 1·2 +0·1 = = = 1/2 + 1/8 + 1/16 = =
36 Oktal (Heksadesimal) ke Biner dan sebaliknya Oktal (Heksadesimal) to Biner: –Buatlah setiap Oktal (heksadesimal) menjadi tiga(empat) digit biner mulai dari radix point ke-kedua arah. Biner ke Oktal (Heksadesimal): –Group-kan digit biner menjadi tiga (empat) bit group mulai dari radix point ke-kedua arah. Tambahkan nol bila dibutuhkan pada bag pecahan. –Konversikan masing2 group dari tiga (empat) ke oktal (heksadesimal) digit.
37 Oktal to Heksadesimal lewat Biner Konversikan oktal ke biner. Gunakan grouping empat bit dan konversikan seperti diatas ke heksadesimal digits. Contoh: Oktal ke Biner ke Heksadesimal ( ) 8 Bagaimana konversi ini bisa bekerja?
38 Catatan Terakhir Konversi Sebetulnya dapat pula dilakukan aritmatika dalam basis yang lain, tapi harus dsangat hati2. Contoh: Konversikan ke basis 10 menggunakan aritmatika biner : Step / 1010 = 100 r 0110 Step / 1010 = 0 r 0100 Converted Digits are | or
39 Kode Biner untuk digit Desimal Decimal8,4,2,1 Excess3 8,4,-2,-1 Gray Lebih dari 8,000 jalan yang dapat dipilih dari 10 elements ke 16 bilangan biner 4 bits. Yang sering digunakan adalah:
40 Binary Coded Decimal (BCD) Kode BCD adalah kode 8,4,2,1. This code is the simplest, most intuitive binary code for decimal digits and uses the same powers of 2 as a binary number, but only encodes the first ten values from 0 to 9. Example: 1001 (9) = 1000 (8) (1) How many “invalid” code words are there? What are the “invalid” code words?
41 Kode Excess 3 dan Kode 8, 4, –2, –1 DecimalExcess 38, 4, –2, –
42 What special property does the Gray code have in relation to adjacent decimal digits? Gray Code Decimal8,4,2,1 Gray
43 B B 1 B 2 (a) Binary Code for Positions 0 through 7 G 0 G 1 G (b) Gray Code for Positions 0 through 7 Gray Code (Continued) Does this special Gray code property have any value? An Example: Optical Shaft Encoder
44 Gray Code (Continued) How does the shaft encoder work? For the binary code, what codes may be produced if the shaft position lies between codes for 3 and 4 (011 and 100)? Is this a problem?
Answer 1: The encoder disk contains opaque and clear areas. Opaque represents a 0 and clear a 1. Light shining through each ring of the encoder corresponding to a bit of the code strikes a sensor to produce a 0 or a 1. Answer 2: In addition to the correct code, either 011 or 100, the codes 000, 010, 001, 110, 101, or 111 can be produced. Answer 3: Yes, the shaft position can be completely UNKNOWN ! 45
46 Gray Code (Continued) For the Gray code, what codes may be produced if the shaft position lies between codes for 2 and 6 (010 and 110)? Is this a problem? Does the Gray code function correctly for these borderline shaft positions for all cases encountered in octal counting?
Answer 1: Only the correct codes, either 010 or 110 Answer 2: No, the shaft position is known to be either 3 or 4 which is OK since it is halfway in between. Answer 3: Yes, since an erroneous code cannot arise. This includes between 0 and 7 (000 and 100). 47
48 Perhatian: Konversi atau Coding? Jangan Bingung antara konversi dari bilangan desimal ke biner dengan coding suatu bilangan desimal ke BINARY CODE = (Ini adalah konversi) 13 0001|0011(Ini adalah coding)
49 Aritmatika BCD Suatu BCD code, dijumlahkan dengan aritmatika biner: Eight Plus is 13 (> 9) Catatan bahwa hasik adalah > 9, seharusnya dinyatakan dalam 2 digit Untuk mengkoreksi, tambahkan 6 modulo Eight Plus is 13 (> 9) so add 6 carry = leaving 3 + cy 0001 | 0011 Final answer (two digits) If the digit sum is > 9, add one to the next significant digit
50 Contoh penjumlahan BCD Tambahkan 2905 BCD dg 1897 BCD Tunjukkan simpanan dan koreksi digit
51 Error-Detection Codes Redundancy (e.g. extra information), in the form of extra bits, can be incorporated into binary code words to detect and correct errors. A simple form of redundancy is parity, an extra bit appended onto the code word to make the number of 1’s odd or even. Parity can detect all single-bit errors and some multiple-bit errors. A code word has even parity if the number of 1’s in the code word is even. A code word has odd parity if the number of 1’s in the code word is odd.
52 4-Bit Parity Code Example Fill in the even and odd parity bits: The codeword "1111" has even parity and the codeword "1110" has odd parity. Both can be used to represent 3-bit data. Even Parity Odd Parity Message - Parity Message - Parity
53 ASCII Character Codes American Standard Code for Information Interchange This code is a popular code used to represent information sent as character-based data. It uses 7-bits to represent: –94 Graphic printing characters. –34 Non-printing characters Some non-printing characters are used for text format (e.g. BS = Backspace, CR = carriage return) Other non-printing characters are used for record marking and flow control (e.g. STX and ETX start and end text areas). (Refer to Table 1 -4 in the text)
54 ASCII Properties ASCII has some interesting properties: Digits 0 to 9 span Hexadecimal values to Upper case A -Z span to 5A 16. Lower case a -z span to 7A 16. Lower to upper case translation (and vice versa) occurs byflipping bit 6. Delete (DEL) is all bits set, a carryover from when punched paper tape was used to store messages. Punching all holes in a row erased a mistake!
55 UNICODE UNICODE extends ASCII to 65,536 universal characters codes –For encoding characters in world languages –Available in many modern applications –2 byte (16-bit) code words –See Reading Supplement – Unicode on the Companion Website