BLGSAYAR MHENDSLNE GR Say ve Kodlama Sistemleri kili
BİLGİSAYAR MÜHENDİSLİĞİNE GİRİŞ Sayı ve Kodlama Sistemleri
İkili sayıların Onlu sayılara Çevirimi (Binary to Decimal Conversion) • 1101012 =?
Onluk – ikilik çevrimi (decimal to binary conversion) • 1 bayt (8 bit) veri 28 yani 256 farklı değer alabilir (0000)2 = (0)10 (1111)2 = (255)10 • Örn: (175)10 = (? )2 10101111 175 2 -174 87 2 1 -86 43 2 1 -42 21 2 1 -20 10 2 1 -10 5 2 0 -4 2 1 -2 0 2 1
2 tür tümleme vardır: • 1’e tümleme: 678 sayısının 1’e tümleyeni 321 • 2’ye tümleme: 678 sayısının 2’ye tümleyeni 321+1=322
İkili Sayıların Tümleyenini Alma • 1’e TÜMLEME • İkili sayı sisteminde bir sayının tümleyenini almak o sayının 0 olan bitlerini 1, 1 olanları da 0’a çevirerek gerçekleştirilir (tersini veya değilini almak ta diyebiliriz). • Sonuçta sayı ile o sayının tümleyeni toplandığında tüm bitlerin 1 olduğu durum elde edilir. • Örn: Sayımız : (10110100)2 = (180)10 Tümleyeni : (01001011)2 = (75)10
İkili Sayıların Tümleyenini Alma • 2’ye TÜMLEME • Sayının tümleyenine 1 eklenmesi ise « 2’ye göre tümleyen» olur. Örn: Sayımız : (10110100)2 = (180)10 Tümleyeni : (01001011)2 = (75)10 2’ye tümleyeni: (01001100)2 = (76)10
Negatif sayılar nasıl temsil edilir? • Negatif tamsayıları temsil etmek için 1 bitlik bilginin işaret (- veya +) için kullanılması düşünülebilir. • Örneğin 16 bit veri boyutu için: 1 1 1 1 1 ise – 0 ise + Kalan 15 bit ile 32. 768 (215) sayı temsil edilebilir • Bu yöntemin olumsuz yanı sıfırın hem negatif hem de pozitif olarak değerlendirilmesidir (16 bitin tamamı 0 ise '+0', işaret biti 1 diğerleri 0 ise '-0'). Bu yöntem ile -32. 767 ile +32. 767 arasındaki sayıları temsil edebiliriz.
Kaç bit gerekli? • n bit ile temsil edilebilecek en büyük sayı = 2 n-1’dir. • n = 4 ise 15, n = 8 ise 255, n = 16 ise 65535, … • Soru: (1. 000)10 sayısını 2’li sayı sisteminde temsil edebilmek için kaç bit gereklidir? • 2 n-1 >= 1. 000 olması gereklidir. Bu durumda n en az 20 olmalıdır (210 = 1024 olduğuna göre 220 = 10242) • NOT: Bilgisayarda sayılar genellikle 1 bayt, 2 bayt, 4 bayt veya 8 bayt gibi büyüklüklerde saklanır. 3 bayt ya da 5 bayt gibi veri büyüklükleri programlama dillerinde yoktur. 1 milyon sayısı için 2 bayt (16 bit) yetmeyeceği için 4 bayt (32 bit) bir veri büyüklüğü seçmeliyiz. 32 bit ile 232 -1 = 4. 294. 967. 295’ e kadar sayıları temsil edebiliriz.
• Ondalıklı sayılar bilgisayar biliminde kayan noktalı sayılar (floating point numbers) olarak bilinir. Bunun sebebini bir örnek ile açıklayabiliriz: • 123. 4567 sayısı aşağıdaki şekillerde gösterilebilir: 12. 34567 x 101 = 1. 234567 x 102 = 0. 1234567 x 103 • Görüldüğü gibi noktanın solunda sıfıra ulaşana kadar n basamak kaydırdığımızda sayının yanına x 10 n eklenir. Bilgisayarda sadece 1234567 (mantis) ve n (üs) değerlerini tamsayı olarak saklamak yeterli olacaktır. • Eğer ondalıklı sayı 32 bit büyüklükte saklanacaksa 23 bit mantis için 8 bit üs için 1 bit ise işaret için kullanılır (64 bit için ise sırasıyla 52, 11, 1 şeklinde olacaktır).
Devamı Haftaya …
- Slides: 24