Professional Documents
Culture Documents
Sayısal Elektronik Ders Notu: Sayi Sistemleri
Sayısal Elektronik Ders Notu: Sayi Sistemleri
SAYI SİSTEMLERİ
2.1 Giriş
Desimal sayı sistemi bize en tanıdık gelen sayı sistemidir. İnsanların ayak ve
ellerindeki 10 parmaktan esinlenerek uyarlanmıştır. Desimal sayı sisteminin
bazı 10’dur. Bu sayı sisteminde kullanılan semboller 0, 1, 2, 3, 4, 5, 6, 7, 8
ve 9’dur. Daha önce ifade edildiği gibi sembol sayısı baz sayısına eşittir. En
büyük değerlikli sembol, baz değerinden bir küçüktür. Desimal sayı sistemi
yaygın kullanıldığından dolayı 9’dan büyük sayıları temsil etmek için nadiren
durup düşünürüz. 9’dan büyük sayıları ifade etmek için rakamların
bulundukları konumlara ağırlıklar atanır. Birinci konum sağdan başlar sola
Örnek olarak 124 sayısını ele alalım. Desimal sayının değeri, her rakamın
değerini, bulunduğu konumun ağırlığı ile çarpımların toplamından hesap-
lanır. 124 sayısının desimal değeri aşağıda verilmiştir. Diğer sayı sistem-
lerinde de görüleceği üzere, herhangi bir sayının desimal karşılığı, rakam
değerlerinin bulundukları konum ağırlıkları ile çarpımların toplamından
hesaplanır.
Bir dijital elemanın çıkış durumuna bir veya sıfır atanması isteğe bağlıdır.
Örneğin, anahtar kapalı olduğunda bir, açık olduğunda ise sıfır
tanımlanabilir. Genel anlamda dijital cihazlar, yüksek çıkış geriliminde 1,
düşük çıkış geriliminde 0 kabul edilecek tarzda tasarlanır. Bu sisteme pozitif
lojik denir.
İkili sayı sisteminde sadece iki rakam kullanıldığından sayma işlemi biraz
sıkıcı olabilir. Bir dijitlik bölgede sadece bir değişim olabilir. Desimal sayı
sisteminde 10 değişimden sonra yeni bir dijit eklenir. İkili sayı sisteminde de
tıpkı desimal sayı sisteminde olduğu gibi yeni bir dijit eklenmelidir. İkili sayı
sisteminde 0,1 şeklinde sayarken bir sonraki sayı 10 (bir - sıfır, on değil) olur.
Aşağıdaki tabloda ikili ve desimal sayma şekli gösterilmiştir.
İkili sayı sisteminde her dijit ‘’bit’’ olarak tanımlanır. Örneğin 10110110 ikli
sayısı 8 bitten oluşmuştur.
2.4 Oktal Sayı Sistemleri
Herhangi bir sayıyı ikili sayı sisteminde ifade etmek için gerekli dijit sayısı,
o sayıyı desimal sayı sisteminde ifade etmek için gerekli dijit sayısından
daha fazladır. Örneğin, 91 desimal sayısını ikili sayı sistemiyle ifade etmek
için 1011011 yedi dijit gereklidir. Büyük sayıları okurken ve yazarken çok
sayıda binary dijitle uğraşmak zor olabilir. Oktal sayı sisteminin bazı 8‘dir.
Bu sistemdeki sekiz rakam 0,1,2,3,4,5,6 ve 7 ‘dir. Oktal sayı sistemi ikili sayı
sitemini daha az dijitle temsil etmek için kullanılmaktadır. Aşağıdaki tabloda
0’dan 15’e (desimal) kadar desimal sayılar, bunların ikili ve oktal sayı
karşılıkları gösterilmiştir.
Diğer sayı sistemlerinde olduğu gibi oktal sayı sistemlerin her dijitin
konumuna göre desimal ağırlığı vardır. Örneğin, 21 oktal sayısının desimal
eşdeğeri 17‘dir.
Oktal sayı sisteminin bazı 8’dir. Herhangi bir ikili sayısının oktal karşılığını
bulmak için ikili sayıyı sağdan itibaren üçerli gruplara ayırmak gereklidir
(şekil 2.3). Bu şekilde, çok dijitli ikili sayılar oktal sayı sisteminde daha az
dijitle temsil edilebilir.
Oktal sayı sisteminde olduğu gibi hegzadesimal sayıların ikili sayı karşılıkları
kolayca hesaplanabilir. Dönüştürme işlemi her konumdaki hegza dijitin 4 bit
eşdeğerini yazarak yapılır (şekil 2.5).
Desimal 25 sayısının ikili baz sayı sistemine göre eşdeğeri 11001 olur.
ASCII
BCD
GRAY
Desimal sayı sisteminde 0’dan 9‘a kadar rakamlar vardır. BCD sayı
sisteminde desimal rakamların her biri dört bitlik ikili sayı şeklinde temsil
edilir. Aşağıdaki tabloda BCD kodu, ikili ve desimal sayı sistemi arasındaki
ilişki gösterilmiştir.
0 0000 0000
1 0001 0001
2 0010 0010
3 0011 0011
Desimal sayının BCD eşdeğerini bulmak için, her desimal dijitin karşılığının
BCD eşdeğeri yazılır. 725 desimal sayısının BCD eşdeğeri şekil 2.6’da
verilmiştir.
0000 0000
0001 0001
0011 0010
0010 0011
0110 0100
0111 0101
0101 0110
0100 0111
1100 1000
2N-1
24-1=15
2N
24=16
olur.
Eğer veri BCD formatında kaydedilmiş ise desimal bir dijiti temsil etmek
için 4 bit kullanılır. Dört bitle sıfırdan dokuza kadar olan rakamlar temsil
edilebilir. PLC’de verileri BCD kodunda saklayan veya işleyen komutlar
mevcuttur.
Onaltı bitlik registerla dört dijitlik desimal sayı (0000dan 9999 a kadar) temsil
edilebilir. Desimal 109’un BCD kodunda ifade edilmesi için 12 bite ihtiyaç
vardır (şekil 2.8).
Şekil 2.10
Sayı pozitif ise, sayı direkt ikili sayı formunda temsil edilir. Registerin en
önemli bitine 0 rakamı yazılır.
Sayı negatif ise, sayı ikinin komplimanı şeklinde ifade edilir. Registerin en
önemli bitine 1 rakamı yazılır.
Şekil 2.11
Şekil 2.12
Şekil 2.13
8 bite yazılabilecek en büyük işaretli sayının desimal karşılığı 127 olur (şekil
2.13). 8 bite yazılabilecek en büyük işaretli sayı –128 (2’nin komplimanı
şeklinde) olur (şekil 2.14).
Şekil 2.14
olur. Şekil 2.14’teki sayının desimal değerini hesaplamak için tekrar 2’nin
komplimanı alınırsa,
Çözüm 2.1
(19)10 = (10011)2
(32)10 = (100000)2
(65)10 = (1000001)2
(130)10 = (10000010)2
Çözüm 2.2
(100110)2 = (38)10
(001101)2 = (13)10
(10000000)2 = (128)10
(11111111)2 = (255)10
Örnek 2.3 Desimal 47 sayısını ikili sayı sisteminde temsil etmek için kaç bite
ihtiyaç vardır.
Çözüm 2.3
eşitliğine göre n=6 olmalıdır. 47 sayısı 6 bitle temsil edilebilir.
Örnek 2.4 Aşağıdaki bit sayılarıyla ikili sayı sisteminde kaç farklı kombinasyon
oluşturulabilir.
a) 2 bit
b) 5 bit
c) 8 bit
d) 10 bit
Çözüm 2.4
2 bit ile: 22 = 4 farklı kombinasyon
5 bit ile: 25 = 32 farklı kombinasyon
8 bit ile: 28 = 256 farklı kombinasyon
Çözüm 2.5
8 bitlik registera: 28-1 = 255
9 bitlik registera: 29-1 = 511
10 bitlik registera: 210-1 = 1023
12 bitlik registera: 212-1 = 4095 desimal sayıları yazılabilir.
Çözüm 2.6
(12)8 = 1x8+2x1=(10)10
(30)8 = 3x8+0x1=(24)10
(50)8 = 5x8+0x1=(40)10
(120)8 = 1x64+2x8+0x1=(80)10
Çözüm 2.7
(13)8 = (001011)2
(70)8 = (111000)2
(152)8 = (1101010)2
(301)8 = (11000001)2
Çözüm 2.9
(A1)16 = (161)10
(23)16 = (35)10
(2C)16 = (44)10
(1FF)16 = (512)10
Çözüm 2.10
(3F)16 = (00111111)2
(10A)16 = (000100001010)2
(12)16 = (00010010)2
(FF)16 = (11111111)2
Çözüm 2.11
(16)10 = (10)16
(48)10 = (30)16
(110)10 = (6E)16
(254)10 = (FE)16
Çözüm 2.12
(47)10 = (01000111)BCD
(10)10 = (00010000)BCD
(962)10 = (100101100010)BCD
(1204)10 = (0001001000000100)BCD
Örnek 2.13 0 ile 999 arasındaki desimal sayıları binary ve BCD kodda ifade
etmek için kaç bite ihtiyaç vardır. Ayrı ayrı hesaplayınız.
Çözüm 2.13
0....999 arasındaki desimal sayıları ifade etmek için eşitliğinden
n=10 bite ihtiyaç vardır. 0....999 arasındaki sayıları BCD kodunda ifade etmek
için 12 bite ihtiyaç vardır.
Çözüm 2.14
(01001001)BCD = (49)10
(001110010101)BCD = (395)10
(00100110)BCD = (26)10
(0010000000000011)BCD = (2003)10
Çözüm 2.15 -15 sayısının 2’nin komplimanını bulmak için +15 sayısının ikili
sayı sistemindeki karşılığı bulunur: 00001111.Bu sayının komplimanı alınır
11110000 ve 1 ilave edilirse 11110001 sayısı –15’in 2’nin komplimanı olur. –
128’in 2’nin komplimanı da 10000000 olur.
Örnek 2.17 12 bitlik (işaret biti dahil) registerde hangi aralıktaki işaretli desimal
sayıları ifade edebiliriz.
Çözüm 2.17
+2047 –2048 aralığındaki desimal sayılar ifade edilebilir.
Örnek 2.18 -32768 ile 32768 arasındaki desimal sayıları ifade etmek için kaç
bite ihtiyaç vardır.
Çözüm 2.18
16 bitlik (işaret biti dahil) alana ihtiyaç vardır.