bilgisayar mimarisi · İkili mantık İkili mantık, iki ayrık değer alabilen değişkenleri ve...

17
10.10.2013 1 Bilgisayar Mimarisi İkilik Kodlama ve Mantık Devreleri Yrd.Doç.Dr. Celal Murat KANDEMİR ESOGÜ –Eğitim Fakültesi -BÖTE twitter.com/cmkandemir Kodlama Kodlama (Coding) : Bir nesneler kümesinin bir dizgi (bit dizisi) kümesi ile temsil edilmesidir. Kod (Code) : Bit dizgisi kümesidir. Kod Kelimesi (Code Word) : Kod içerisindeki belli bir bit dizgisidir. Örnekler : 1-Veri nesneleri : Ondalık sayılar, Karakterler. 2- Veri olamayan nesneler : Makine durumları, Kontrol Hareketleri

Upload: others

Post on 25-Dec-2019

11 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Bilgisayar Mimarisi · İkili Mantık İkili mantık, iki ayrık değer alabilen değişkenleri ve mantıksal anlam taşıyan işlemleri ele alır. Değişkenlerin alabileceği iki

10.10.2013

1

Bilgisayar Mimarisiİkilik Kodlama ve Mantık Devreleri

Yrd.Doç.Dr. Celal Murat KANDEMİRESOGÜ – Eğitim Fakültesi - BÖTEtwitter.com/cmkandemir

Kodlama

� Kodlama (Coding) : Bir nesneler kümesinin bir dizgi (bit

dizisi) kümesi ile temsil edilmesidir.

� Kod (Code) : Bit dizgisi kümesidir.

� Kod Kelimesi (Code Word) : Kod içerisindeki belli bir bit

dizgisidir.

� Örnekler :

1- Veri nesneleri : Ondalık sayılar, Karakterler.

2- Veri olamayan nesneler : Makine durumları, Kontrol

Hareketleri

Page 2: Bilgisayar Mimarisi · İkili Mantık İkili mantık, iki ayrık değer alabilen değişkenleri ve mantıksal anlam taşıyan işlemleri ele alır. Değişkenlerin alabileceği iki

10.10.2013

2

Ondalık Kodlar� Büyük bir bölümümüz ondalık sayılarla işlem yapmaya alışkınız.

� Ondalık Sayılar ikiliğe çevrilir, tüm işlemler ikilik sistemde yapılır ve tekrar ondalık sisteme çevrilir.

� n-bitlik bir ikilik kod, 1’ler ve 0’lardan oluşmuş 2n adet farklı birleşim oluşturan n-bitlik bir gruptur.

� N-bitlik kodlamada bit birleşimleri (kombinasyonları) aralığı 0-2n-1 dir.

� 4 elemana sahip bir küme 2-bitlik bir ikili kodlama ile kodlanır. 00, 01, 10, 11

� 8 elemana sahip bir küme ise 3-bitlik bir ikili kodlama ile kodlanabilir. 000,001,010,011,100,101,110,111

� 16 elemanlı bir küme 4-bitlik kodlamaya ihtiyaç duyar.

� Eğer küme içindeki eleman sayısı 2’nin katı şeklinde değilse ikili koddaki bazı kombinasyonlar atanmamış olacaktır.

İkili Kodlu Ondalık(Binary Coded Decimal) BCD

� 4-bitlik bir ikili kod kullanılmıştır.

Ama sadece 10 kombinasyon

kullanılır. 6 kombinasyon tahsis

edilmemiştir.

� Kodlar doğrudan bir ikili eşdeğer

düzenlemesidir.

BCD TABLOSU

Ondalık Sayı BCD Kod

0 0000

1 0001

2 0010

3 0011

4 0100

5 0101

6 0110

7 0111

8 1000

9 1001

Page 3: Bilgisayar Mimarisi · İkili Mantık İkili mantık, iki ayrık değer alabilen değişkenleri ve mantıksal anlam taşıyan işlemleri ele alır. Değişkenlerin alabileceği iki

10.10.2013

3

BCD

� N basamağa sahip bir ondalık sayı BCD kodlamada 4xn

bite ihtiyaç duyar.

� (396) 10 = 0011 1001 0110

� (807) 10 = 1000 0000 0111

Not:

� BCD sayılar ikilik sayılar değil ondalık sayılardır.

Ondalık bir sayının ikiliye çevrilmesi ile ondalık bir

sayının ikili kodlanması aynı anlamı taşımaz!

� (185) 10 = (0001 1000 0101) BCD = (10111001) 2

Ondalık Haneler İçin Diğer İkili Kodlar

Sayılar sayısal bilgisayarda ya ikili olarak ya da ikili bir kod

vasıtasıyla ondalık olarak temsil edilirler. Veriler

belirlenirken kullanıcı, verileri ondalık şeklinde vermek ister.

Girilen ondalık sayılar bilgisayarın içinde ondalık bir kod

vasıtasıyla saklanır. Her bir ondalık hane en az dört adet ikili

saklama elemanı gerektirir. İkili olarak temsil edilen

sayılarla makine içinde aritmetik işlem yapılacağı zaman

ondalık sayılar ikiliye çevrilir.

Page 4: Bilgisayar Mimarisi · İkili Mantık İkili mantık, iki ayrık değer alabilen değişkenleri ve mantıksal anlam taşıyan işlemleri ele alır. Değişkenlerin alabileceği iki

10.10.2013

4

Ondalık Kodlar

0 0000 0000 0011 0100001 1000000000

1 0001 0001 0100 0100010 0100000000

2 0010 0010 0101 0100100 0010000000

3 0011 0011 0110 0101000 0001000000

4 0100 0100 0111 0110000 0000100000

5 0101 1011 1000 1000001 0000010000

6 0110 1100 1001 1000010 0000001000

7 0111 1101 1010 1000100 0000000100

8 1000 1110 1011 1001000 0000000010

9 1001 1111 1100 1010000 0000000001

Ondalık BCD(8421) 2421 Artık-3Biquinary

1-out-of-10(İki Birli)

Örnek

� (369)10

sayısı için BCD code, 2421 ve Artık-3 kodları yazınız

� Cevap :BCD: 0011 0110 10002421: 0011 1100 1111Artık-3 : 0110 1001 1100

Page 5: Bilgisayar Mimarisi · İkili Mantık İkili mantık, iki ayrık değer alabilen değişkenleri ve mantıksal anlam taşıyan işlemleri ele alır. Değişkenlerin alabileceği iki

10.10.2013

5

Alfanümerik Kodlar (Character Codes)� Herbir karakter bir bit dizgisi ile temsil edilir.

� ASCII - the American Standard Code for Information

Interchange.

* Karakterler 7-bit olarak kodlanmıştır.

* 128 karakter içerir :

- Büyük ve küçük harfler

- Sayılar

- Noktalama İşaretleri

- Kontrol Karakterleri,

� 94 yazma karakteri ve 34 yazılamayan karakter(kontrol

fonksiyonları için)

ASCII Tablosu

Page 6: Bilgisayar Mimarisi · İkili Mantık İkili mantık, iki ayrık değer alabilen değişkenleri ve mantıksal anlam taşıyan işlemleri ele alır. Değişkenlerin alabileceği iki

10.10.2013

6

Örnek� SAYISAL kelimesini ASCII olarak

kodlayınız.

Karakter İkilik Kod Onaltılık Kod

S 101 0011 (83) 53

A 110 0101(65) 41

Y 101 1001(89) 59

I 100 1001(73) 49

S 101 0011 (83) 53

A 110 0101(65) 41

L 100 1100(76) 4C

� EBCDIC

�8 Bit, 256 karakter

� IBM tarafından bulunmuş ve mainframe’lerde

kullanılmıştır.

� UniCode

�16 Bit

�65,536 karakter

�Farklı dillerde yazılmış olan metinlerin

değişimi, işlenmesi ve gösterilmesinı

desteklemek amacıyla geliştirilmiştir. Dünya

üzerindeki tüm diller desteklenir.

Page 7: Bilgisayar Mimarisi · İkili Mantık İkili mantık, iki ayrık değer alabilen değişkenleri ve mantıksal anlam taşıyan işlemleri ele alır. Değişkenlerin alabileceği iki

10.10.2013

7

Unicode

Veri Olmayan Nesneler İçin Kodlama� n nesne b bit ile kodlanır:

b=[log2 n]=[log10 n/ log10 2]

� örnek : 124 nesne , (log10 124/log10 2) = 6.95, b=7

� Uygulama : - Kontrol ünitesi aynı anda bir cihazı çalıştırır.

Kontrol Ünitesi

Cihaz 0 Cihaz 1 Cihaz n-1

İkili Kod

Page 8: Bilgisayar Mimarisi · İkili Mantık İkili mantık, iki ayrık değer alabilen değişkenleri ve mantıksal anlam taşıyan işlemleri ele alır. Değişkenlerin alabileceği iki

10.10.2013

8

İkili Saklama ve Kaydediciler

� Ayrık bilgi öğeleri ikili biçimde gösterildiği zaman, bilgi saklama ortamının ayrı ayrı bitleri saklamak için ikili saklama elemanları içermesi gerekir.

� Bir ikili hücre iki kararlı duruma sahip olan ve bir bitlik bilgi saklayabilen bir aygıttır.

� Hücrenin girişi, hücreyi iki durumdan birine çeken uyarma sinyalleri alır. Hücrenin çıkışı ise iki durumu birbirinden ayıran fiziksel bir niceliktir.

� İkili hücrelere örnek olarak flip-flop’lar verilebilir.

Kaydediciler (Register)(Yazmaç)

� Kaydedici, bir ikili hücreler grubudur.

� Bir hücre bir bitlik bilgi sakladığı için, bundan n hücreli bir kaydedicinin n bit içeren ayrık bilgi niceliklerini saklayabileceği sonucu çıkar.

� Bir kaydedicinin durumu, 1’lerin ve 0’ların nkatı kadar bir sayıdır.

� Kaydedicinin içeriği ise kaydedicide saklı bilgilere uygulanan yorumun bir fonksiyonudur.

Page 9: Bilgisayar Mimarisi · İkili Mantık İkili mantık, iki ayrık değer alabilen değişkenleri ve mantıksal anlam taşıyan işlemleri ele alır. Değişkenlerin alabileceği iki

10.10.2013

9

Örnek

� 0 ile 216-1 arası herhangi bir ikili sayı saklanabilir.

� Ondalık = 50121

� EBCDIC = C I

� Artık-3 = 9096

� BCD’de anlamsız

� Kullanıcının kaydedicilerde anlamlı bilgiler saklaması ve bilgisayarın, bu bilgileri saklanan bilgilerin türüne göre işlemesi önemlidir.

1 1 0 0 0 0 1 1 1 1 0 0 1 0 0 1

1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6

KaydedicilerleBilgi

Aktarımı

Klavye

Bellek Ünitesi

İşlem Ünitesi

Giriş Ünitesi GirişKaydedicisi

8 HücreİşlemciKaydedicisi

BellekKaydedicisi

8 Hücre8 Hücre 8 Hücre

8 Hücre

Page 10: Bilgisayar Mimarisi · İkili Mantık İkili mantık, iki ayrık değer alabilen değişkenleri ve mantıksal anlam taşıyan işlemleri ele alır. Değişkenlerin alabileceği iki

10.10.2013

10

Kaydedici Aktarımı

İşlenen 1

Toplam

İşlenen 2

Toplama İçin devre

Bellek Ünitesi

İşlemci Ünitesi

İkili Mantık� İkili mantık, iki ayrık değer alabilen değişkenleri ve

mantıksal anlam taşıyan işlemleri ele alır. Değişkenlerin alabileceği iki değer farklı şekillerde adlandırılabilir:�Doğru/Yanlış� Evet/hayır� Sıcak/soğuk�Açık/kapalı� 1/0

� Boole Cebri, ikili değişkenler ve mantıksal işlemlerden oluşur. Değişkenler A, B, C, x, y, z vb. harflerle gösterilir; burada her değişken ancak ve ancak olası iki ayrı değerden birini alabilir: 1 ve 0. Üç temel mantık işlemi vardır: VE (AND), VEYA (OR) ve DEĞİL (NOT)

Page 11: Bilgisayar Mimarisi · İkili Mantık İkili mantık, iki ayrık değer alabilen değişkenleri ve mantıksal anlam taşıyan işlemleri ele alır. Değişkenlerin alabileceği iki

10.10.2013

11

İkili Mantık� x ve y değerlerinin her birleşimi için, mantık işleminin

tanımıyla belirlenen bir z değeri vardır. Bu tanımlar, doğruluk tabloları (truth table) kullanılarak özet şeklinde verilebilir. Doğruluk tablosu, değişkenlerin alabileceği olası bütün bileşimleri içeren ve değişkenlerin alabileceği değerlerle işlem sonucu arasındaki ilişkiyi gösteren bir tablodur.

AND OR NOT

x y x.y x y x+y x x‘

0 0 0 0 0 0 0 1

0 1 0 0 1 1 1 0

1 0 0 1 0 1

1 1 1 1 1 1

Değişken sayısı: n

Satır sayısı:

2n olur.

• İkilik İşaretler– Elektrik Sinyalleri: gerilim veya

akımlar

– İki ayrı gerilim değeri seviyesi: logic-1 ve logic-0

– Ortadaki bölge sadece durum değişikliği sırasındadır.

Page 12: Bilgisayar Mimarisi · İkili Mantık İkili mantık, iki ayrık değer alabilen değişkenleri ve mantıksal anlam taşıyan işlemleri ele alır. Değişkenlerin alabileceği iki

10.10.2013

12

Mantık Kapılar� Mantık devreler

– devreler = mantık işleme yollarıdır.

• Hesaplama ve kontrol

– Mantık devrelerinin kombinasyonu ile sağlanır.

• Mantık Kapıları

Zamanlama Diagramları

Page 13: Bilgisayar Mimarisi · İkili Mantık İkili mantık, iki ayrık değer alabilen değişkenleri ve mantıksal anlam taşıyan işlemleri ele alır. Değişkenlerin alabileceği iki

10.10.2013

13

Kod çözücü (Decoder)

� İkilik değer alır çözer

� Çıkışlar n bitlik girişe bağlı olarak elde edilir.

� Aşağıdakilerden oluşur:

� Girişler(n)

� Çıkışlar(2n , 0 → 2n – 1’e kadar numaralanmış)

� Aktifleyici Uç (Enable)

2-to-4 Decoder

Page 14: Bilgisayar Mimarisi · İkili Mantık İkili mantık, iki ayrık değer alabilen değişkenleri ve mantıksal anlam taşıyan işlemleri ele alır. Değişkenlerin alabileceği iki

10.10.2013

14

2-to-4 DecoderDoğruluk Tablosu

3-to-8 Decoder Doğruluk Tablosu

A2 A1 A0 D0 D1 D2 D3 D4 D5 D6 D7

0 0 0 1

0 0 1 1

0 1 0 1

0 1 1 1

1 0 0 1

1 0 1 1

1 1 0 1

1 1 1 1

Page 15: Bilgisayar Mimarisi · İkili Mantık İkili mantık, iki ayrık değer alabilen değişkenleri ve mantıksal anlam taşıyan işlemleri ele alır. Değişkenlerin alabileceği iki

10.10.2013

15

3-to-8 Decoder

Multiplexer (MUX)

� Aşağıdakileri içerir:

� Girişler(çoklu) = 2n

� Çıkışlar(tek)

� Seçici bitler(sayısı giriş değerine bağlıdır) = n

Page 16: Bilgisayar Mimarisi · İkili Mantık İkili mantık, iki ayrık değer alabilen değişkenleri ve mantıksal anlam taşıyan işlemleri ele alır. Değişkenlerin alabileceği iki

10.10.2013

16

Çoklayıcılar - Multiplexer (MUX)

� Seçici bit/bitler tek bir girişi MUX

üzerinden çıkışa yönlendirir.

� Aynı anda sadece bir çıkış yapılır.

Birkaç giriş değerinden çıkış olabilecek

birini seçebilmek için seçici bitler

kullanılan yapılardır.

4 to 1 MUX Doğruluk Tablosu

Page 17: Bilgisayar Mimarisi · İkili Mantık İkili mantık, iki ayrık değer alabilen değişkenleri ve mantıksal anlam taşıyan işlemleri ele alır. Değişkenlerin alabileceği iki

10.10.2013

17

4 to 1 hat multiplexer

S1 S0 F

0 0 I0

0 1 I1

1 0 I2

1 1 I3

4 to 1 hat multiplexer

2n MUX to 1

Bu MUX için n değeri

2

Bunun anlamı 2 seçim

bitinin (hattının), s0 ve

s1 , olacağı.

F

Sorular?