bilgisayar mimarisi - websiteme hoşgeldiniz€¦ · 10.10.2013 2 verilerin İfade edilmesi...

19
10.10.2013 1 Bilgisayar Mimarisi Sayısallaştırma ve Sayı Sistemleri Yrd.Doç.Dr. Celal Murat KANDEMİR ESOGÜ – Eğitim Fakültesi - BÖTE twitter.com/cmkandemir Veri (DATA) Veri nedir? Veri bazı fiziksel niceliklerin ham ifadesidir. Bilgi verinin belli bir yapıdaki şeklidir.

Upload: others

Post on 08-Aug-2020

9 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Bilgisayar Mimarisi - Websiteme Hoşgeldiniz€¦ · 10.10.2013 2 Verilerin İfade Edilmesi …011001110010 1000110010000 1100100001011 100100010000… Analog -Sayısal (Dijital)

10.10.2013

1

Bilgisayar MimarisiSayısallaştırma ve Sayı Sistemleri

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

Veri (DATA)

� Veri nedir?

�Veri bazı fiziksel niceliklerin ham

ifadesidir.

�Bilgi verinin belli bir yapıdaki şeklidir.

Page 2: Bilgisayar Mimarisi - Websiteme Hoşgeldiniz€¦ · 10.10.2013 2 Verilerin İfade Edilmesi …011001110010 1000110010000 1100100001011 100100010000… Analog -Sayısal (Dijital)

10.10.2013

2

Verilerin İfade Edilmesi

…011001110010

1000110010000

1100100001011

100100010000…

Analog - Sayısal (Dijital) İşaretler:� Gerçek dünyada karşılaştığımız bir çok fiziksel

büyüklüğün (akım, gerilim, sıcaklık, ışık şiddeti vb.) değeri sürekli bir aralık içinde değişmektedir. Sınırlar arasındaki her türlü olası değeri alabilen bu tür işaretlere analog işaretler denir.

� İkili (binary) sayısal işaretler ise belli bir anda sedece olası iki değerden birini alabilirler: 0 - 1, yüksek – alçak, doğru – yanlış, açık - kapalı.

Page 3: Bilgisayar Mimarisi - Websiteme Hoşgeldiniz€¦ · 10.10.2013 2 Verilerin İfade Edilmesi …011001110010 1000110010000 1100100001011 100100010000… Analog -Sayısal (Dijital)

10.10.2013

3

Analog - Sayısal (Dijital) İşaretler:

5

Çözünürlük Teriminin Tanımı

� Analog aralığı ifade etmek için kullanılacak sayısal bit miktarının seçilmesidir.

� 8 Bit - 0 - 255 benzersiz (tekil) değer

� 10 Bit - 0 - 1023

� 12 Bit - 0 - 4095

� 16 Bit - 0 - 65535

Page 4: Bilgisayar Mimarisi - Websiteme Hoşgeldiniz€¦ · 10.10.2013 2 Verilerin İfade Edilmesi …011001110010 1000110010000 1100100001011 100100010000… Analog -Sayısal (Dijital)

10.10.2013

4

� Analog işaretten sayısal bir değeri nasıl elde ederiz.

�Düzenli bir aralıkta örnekleyerek.

Örnekleme Oranı

8

Analog ve Dijital Avantaj/Dezavantaj

Page 5: Bilgisayar Mimarisi - Websiteme Hoşgeldiniz€¦ · 10.10.2013 2 Verilerin İfade Edilmesi …011001110010 1000110010000 1100100001011 100100010000… Analog -Sayısal (Dijital)

10.10.2013

5

� Sayısal Verinin Sadece iki durumu vardır.

� Analog verinin sayısala çevrilmesine ihtiyaç vardır.

SAYISAL DURUMLAR

� İkilik veri = bit dizgisidir.

� Bit:

� Birşeyin var / yok ilişkisidir.

� Anahtar veya Lamba açık / kapalı

� Gerilim yüksek / alçak

� Doğru / Yanlış (true / false)

� 1 / 0

� Bit = Bilginin en küçük birimidir.

İkilik Veri (Binary data)

Page 6: Bilgisayar Mimarisi - Websiteme Hoşgeldiniz€¦ · 10.10.2013 2 Verilerin İfade Edilmesi …011001110010 1000110010000 1100100001011 100100010000… Analog -Sayısal (Dijital)

10.10.2013

6

Bit, Byte ve Word

� Bir bit tek bir ikilik basamağa karşılık gelir. (1 veya 0).

� Bir nibble (dörtlü) 4 bitten oluşur.

� Bir byte 8 bitten oluşur

� Bir word 32 bit veya 4 byte’tan (makineye bağlı olarak)

� Long word = 8 byte = 64 bit

�Quad word = 16 byte = 128 bit

� Programlama dilleri veri saklarken veya veriye ulaşırken standard sayıdaki bu bitleri kullanır.

İkilik Sayma

� 0

� 1 1 birler = 1

� 10 1 ikiler , 0 birler = 2

� 11 1 ikiler, 1 birler = 3

� 100 1 dörtler, 0 ikiler, 0 birler = 4

� 101 1 dörtler, 0 ikiler, 1 birler = 5

� 110 1 dörtler, 1 ikiler, 0 birler = 6

Page 7: Bilgisayar Mimarisi - Websiteme Hoşgeldiniz€¦ · 10.10.2013 2 Verilerin İfade Edilmesi …011001110010 1000110010000 1100100001011 100100010000… Analog -Sayısal (Dijital)

10.10.2013

7

0-15 Onluk Sayılar İçin İkilik Değerler

� 8 4 2 1

� 1 0 0 0 1

� 2 0 0 1 0

� 3 0 0 1 1

� 4 0 1 0 0

� 5 0 1 0 1

� 6 0 1 1 0

� 7 0 1 1 1

� 8 1 0 0 0

� 8 4 2 1

� 9 1 0 0 1

� 10 1 0 1 0

� 11 1 0 1 1

� 12 1 1 0 0

� 13 1 1 0 1

� 14 1 1 1 0

� 15 1 1 1 1

Konumsal Gösterim�N= (An-1 An-2 … A1 A0. A-1 A-2 … A-m+1 A-m)r

� . = Kesir noktası (Radix point)

� r = Sayı sistemi tabanı

� n = Kesir noktasının sol tarafındaki tamsayı basamaklarının sayısı

� m = Kesir noktasının sağ tarafındaki kesir basamağı sayısı

� Ai = i. Tamsayı basamak, n-1 ≥ i ≥ 0

� Aj = j. Kesirli basamak, -1 ≥ j ≥ -m

� An-1 = En önemli basamak

� most significant digit (MSD)

� A-m = En az önemli basamak

� least significant digit (LSD)

Page 8: Bilgisayar Mimarisi - Websiteme Hoşgeldiniz€¦ · 10.10.2013 2 Verilerin İfade Edilmesi …011001110010 1000110010000 1100100001011 100100010000… Analog -Sayısal (Dijital)

10.10.2013

8

Polinomsal Gösterim

� N sayısı aşağıdaki şekilde yazılabilir:

�N = An-1

rn-1 + An-2

rn-2…. + A1

r1 + A0

r0 + A-1

r-1…. + A-m

r-m

�N = ∑Ai ri (i = -m to n-1)

Onluk Tabanda Sayılar

� Konumsal Gösterimde

�N= An-1

An-2

� A1

A0 . A-1 A-2 � A-m+1 A-m

�N = 765.34

� Polinomsal Gösterimde

�N = An-1 x 10n-1 + An-2 x 10n-2+�.A-m x 10-m

�N = 7 x 102 + 6 x 101 + 5 x 100 + 3 x 10-1 + 4 x 10-2

Page 9: Bilgisayar Mimarisi - Websiteme Hoşgeldiniz€¦ · 10.10.2013 2 Verilerin İfade Edilmesi …011001110010 1000110010000 1100100001011 100100010000… Analog -Sayısal (Dijital)

10.10.2013

9

Bilgisayar Dünyasındaki Sayı Sistemleri

� Onluk sayı sistemine ek olarak 3 sayı sistemikullanılır

Bunlar:

� İkilik Sistem (Binary System) (2’lik tabanda)

�Sekizlik Sistem (Octal System) (8’lik tabanda)

�Onaltılık Sistem (Hexadecimal System) (16’lıktabanda)

İkilik Sistem

� 2’lik Tabanda 2 rakam vardır: 0 ve 1

� İkilik sayı 0 ve 1’lerden oluşmuş bir dizgidir.

� İkilik sayılardaki basamaklara Bit adı verilir.

Page 10: Bilgisayar Mimarisi - Websiteme Hoşgeldiniz€¦ · 10.10.2013 2 Verilerin İfade Edilmesi …011001110010 1000110010000 1100100001011 100100010000… Analog -Sayısal (Dijital)

10.10.2013

10

İkilik Tabandan Onluk Tabana Dönüştürme

� İkilik sayıların ikilik tabandaki güç serilerine açılması ile elde edilir.

�N = (110110) 2

Polinom açılımının kullanılmasıyla

(110110)2

= 1 x 25 + 1 x 24 + 0 x 23 + 1 x 22 + 1 x 21 + 0 x 20

= 32 + 16 + 0 + 4 + 2 + 0

(110110)2

= (54)10

Devam...

� Örnek 2.

�N = (1101.101) 2

= 1 x 23 + 1 x 22 + 0 x 21 + 1 x 20 +

1 x 2-1 + 0 x 2-2 + 1 x 2-3

= 8 + 4 + 0 + 1 + 0.5 + 0.125

(1101.101) 2 = (13.625) 10

Page 11: Bilgisayar Mimarisi - Websiteme Hoşgeldiniz€¦ · 10.10.2013 2 Verilerin İfade Edilmesi …011001110010 1000110010000 1100100001011 100100010000… Analog -Sayısal (Dijital)

10.10.2013

11

İkinin Katları Tablosu

n 2n n 2n n 2n

0 1 8 256 16 65,536

1 2 9 512 17 131,072

2 4 10 1,024 18 262,144

3 8 11 2,048 19 524,288

4 16 12 4,096 20 1,048,576

5 32 13 8,192 21 2,097,152

6 64 14 16,384 22 4,194,304

7 128 15 32,768 23 8,388,608

Bilgisayar Terminolojisinde Kullanılan Birimler

� 210 = 1 K(kilo)

� 220 = 1 M(mega)

� 230 = 1 G(giga)

� Örnek:

�16K = 24 x 210 = 214 = 16,384

� 4M = 22 x 220 = 222 = 4,194,304

� 1G = ___ M = ___K

Page 12: Bilgisayar Mimarisi - Websiteme Hoşgeldiniz€¦ · 10.10.2013 2 Verilerin İfade Edilmesi …011001110010 1000110010000 1100100001011 100100010000… Analog -Sayısal (Dijital)

10.10.2013

12

Sekizlik Sayılar (Octal)(8 Tabanlı Sistemler)

� 8 rakam mevcuttur 0,1,2,3,4,5,6 ve 7.

� 8 veya 9 olmadığına dikkat ediniz.

� Taban 8’dir. r = 8.

� Onluk tabana çevirme işlemi� N = (127.4)

8

= 1 x 82 + 2 x 81 + 7 x 80 + 4 x 8-1

= 64 + 16 + 7 +0.5

(127.4)8= (87.5)

10

� N = (306.5)8

= (____) 10

Büyük Sayılarla Çalışmak

0 1 0 1 0 0 0 0 1 0 1 0 0 1 1 1 = ?

• İkilik tabandaki büyük sayılarla çalışmak çok basamakla ilgilenmek gerektiği için zordur.

• Bellek adresleri ve diğer veriler gerçekten oldukça büyüktür. Bu yüzden bazı zamanlarda Onaltılık Sayı Sistemi

kullanılır (hexadecimal number system).

Page 13: Bilgisayar Mimarisi - Websiteme Hoşgeldiniz€¦ · 10.10.2013 2 Verilerin İfade Edilmesi …011001110010 1000110010000 1100100001011 100100010000… Analog -Sayısal (Dijital)

10.10.2013

13

Onaltılık Sayılar (Hexadecimal)(16 Tabanlı Sistemler)

� 16 rakam mevcuttur.� 0 - 9 rakamlar ile A, B, C, D, E ve F harfleridir.

� A = 10, B = 11, C = 12, D = 13, E = 14, F = 15

� Taban 16’dır. r = 16

� Onluk Tabana çevirme işlemi� N = (B65F)

16

= 11 x 163 + 6 x 162 + 5 x 161 + 15 x160

= 45,056 + 1536 + 80 +15

(B65F)16= (46687)

10

� N = (FE01)16

= (_____)10

Onaltılık Taban

İkilik 0 1 0 1 0 0 0 0 1 0 0 1 0 1 1 1

onaltılık 5 0 9 7

Yazılış: 509716

Page 14: Bilgisayar Mimarisi - Websiteme Hoşgeldiniz€¦ · 10.10.2013 2 Verilerin İfade Edilmesi …011001110010 1000110010000 1100100001011 100100010000… Analog -Sayısal (Dijital)

10.10.2013

14

Onaltılık Sayı Sistemi(Hexadecimal Number System)

İkilik Onluk Onaltılık İkilik Onluk Onaltılık

0 0 0 1010 10 A

1 1 1 1011 11 B

10 2 2 1100 12 C

11 3 3 1101 13 D

100 4 4 1110 14 E

101 5 5 1111 15 F

110 6 6

111 7 7

1000 8 8

1001 9 9

Sekizlik ve Onaltılık Sayılar

� İkilik tabandaki sayıları dolaylı olarak ifade etmek için oldukça kullanışlıdırlar.

� Tabanları ikinin katıdır

23 = 8 ve 24 = 16

� Herbir sekizlik basamak 3 adet ikilik basamağa karşılıkgelir.

� Herbir onaltılık basamak 4 adet ikilik basamağa karşılıkgelir.

� Çok kompakt (özlü) ve bu yüzden de çok uygundur.

Page 15: Bilgisayar Mimarisi - Websiteme Hoşgeldiniz€¦ · 10.10.2013 2 Verilerin İfade Edilmesi …011001110010 1000110010000 1100100001011 100100010000… Analog -Sayısal (Dijital)

10.10.2013

15

İkilik Tabandan Sekizlik ve Onaltılık Tabana Çevirme

� İkilik sayının kesir noktasından itibaren 3 veya4 bitlik gruplar halinde soldan sağa doğrubölünmesiyle kolaylıkla işlem tamamlanır.

� Herbir gruba ilgili sekizlik veya onaltılık değer atanır.

Örnekler

� İkilik tabandan sekizlik tabana� N = (111011010011.110010) 2

� = (111 011 010 011 . 110 010) 2

� = (7323.62) 8

� İkilik tabandan onaltılık tabana� N = (1110000011110101.110101101100) 2

� = (1110 0000 1111 0101.1101 0110 1100) 2

� = (E0F5.D6C) 16

Page 16: Bilgisayar Mimarisi - Websiteme Hoşgeldiniz€¦ · 10.10.2013 2 Verilerin İfade Edilmesi …011001110010 1000110010000 1100100001011 100100010000… Analog -Sayısal (Dijital)

10.10.2013

16

Devam..

� N = (101011011000.111100001010)2= (5330.7412)8

= (AD8.F0A)16

� N = (11101101101100110.1101110100011)2= (____________) 8

= (____________) 16

Onluk Tabandan Diğer Tabanlara Dönüşüm

� Eğer sayı kesir ayracı içeriyorsa i tamsayı kısmı ve f kesir kısmı olmak üzere iki bileşene ayırınız.

� Bu iki bileşen ayrı ayrı çevrilecektir.

� i bileşeni daha sonra r tabanına (dönüştürülecek taban) bölünür.

� Her bölme işleminden sonra elde edilen bölüm art arda r ile bölünür.

� Kalanlar biriktirilir.

� f bileşeni ise r taban değeri ile çarpılır ve çarpım sonucunun tamsayı kısmı gözönüne alınır.

� Tamsayı kısım için bölüm işlemlerindeki kalanlar aşağıdan yukarıya okunur.

� Kesirli kısım için ise çarpım sonucuçlarındaki tamsayı kısımlar yukarıdan aşağıya okunur.

Page 17: Bilgisayar Mimarisi - Websiteme Hoşgeldiniz€¦ · 10.10.2013 2 Verilerin İfade Edilmesi …011001110010 1000110010000 1100100001011 100100010000… Analog -Sayısal (Dijital)

10.10.2013

17

Onluk Tabandan İkilik Taban Çevrim (Tamsayı Bileşen)

(37)10 onluk tabandaki sayıyı ikilik tabana çeviriniz.

� 37/2 = 18 + 1/2 Kalan = 1 LSD(LSB)

� 18/2 = 9 + 0/2 Kalan = 0

� 9/2 = 4 + 1/2 Kalan = 1

� 4/2 = 2 + 0/2 Kalan = 0

� 2/2 = 1 + 0/2 Kalan = 0

� 1/2 = 0 + 1/2 Kalan = 1 MSD(MSB)

� (37)10 = (100101)2

Onluk Tabandan İkilik Taban Çevrim (Kesirli Bileşen)

(0.6875) 10 onluk tabandaki sayıyı ikilik tabana çeviriniz.

� 0.6875 x 2 = 1.3750 Tamsayı = 1 MSB

� 0.3750 x 2 = 0.7500 Tamsayı = 0

� 0.7500 x 2 = 1.5000 Tamsayı = 1

� 0.5000 x 2 = 1.0000 Tamsayı = 1 LSB

� (0.6875) 10 = (0.1011) 2

Page 18: Bilgisayar Mimarisi - Websiteme Hoşgeldiniz€¦ · 10.10.2013 2 Verilerin İfade Edilmesi …011001110010 1000110010000 1100100001011 100100010000… Analog -Sayısal (Dijital)

10.10.2013

18

Onluk Tabandan Sekizlik Tabana Çevrim (Tamsayı Bileşen)

� Örnek: (165)10 sayısını sekizlik tabana çeviriniz

165/8 = 20 + 5/8 Kalan = 5 LSD

20/8 = 2 + 4/8 Kalan = 4

2/8 = 0 + 2/8 Kalan = 2 MSD

(165) 10 = (245) 8

Onluk Tabandan Sekizlik Tabana Çevrim (Kesirli Bileşen)

(0.513)10 onluk tabanda verilen sayıyı sekizlik tabana çeviriniz

� 0.513 x 8 = 4.104 Tamsayı = 4 MSD

� 0.104 x 8 = 0.832 Tamsayı = 0

� 0.832 x 8 = 6.656 Tamsayı = 6

� 0.656 x 8 = 5.248 Tamsayı = 5 LSD

(0.513)10 = (0.4065)8� Virgülden sonra 3 basamak hassasiyet kullanılırsa:

(0.513)10 = (0.407)8

Page 19: Bilgisayar Mimarisi - Websiteme Hoşgeldiniz€¦ · 10.10.2013 2 Verilerin İfade Edilmesi …011001110010 1000110010000 1100100001011 100100010000… Analog -Sayısal (Dijital)

10.10.2013

19

Onluk Tabandan Onaltılık Tabana Çevrim

� (190)10 onluk tabandaki sayıyı onaltılık tabana çeviriniz.

� Taban 16

� 190/16 = 11 + 14/16 Kalan = 14 = E LSD

� 11/16 = 0 + 11/16 Kalan = 11 = B MSD

� (190) 10 = (BE) 16

Sorular?