Sayısal sistem

**Sayısal sistem**, sayıları temsil eden simgeler için bir yazma sistemi yani matematiksel bir gösterim sistemidir.

Sayısal sistem terimi birbirine yakın ancak farklı iki yazı sistemi için de kullanılmaktadır:

* Rakam sistemleri
* Değer sistemleri

## Rakamsal yazım sistemleri

Günümüzde rakamların yazımında kullanılan en yaygın sistem, Türkçe için de kullanılan, Arap rakamları ya da  Hint-Arab rakamlarıdır. Ancak yazılı tarih boyunca, bir kısmı artık kullanılmayan, bazılarının izine başka sistemlerde rastlanan, bazıları da hala yaşayan, çok farklı yazım sistemleri görülmüştür.

En basit rakamsal yazı sistemi bir simgeyi her sayının değeri kadar tekrarlayarak yazılan *birli* (ya da *tekli*,) yazım sistemidir. Birli sistemde 8 sayısı, örneğin | işareti kullanılarak |||||||| şeklinde yazılır.

Belirli değerler için farklı işaretler kullanılarak, birli yazım sistemi daha kısa ve kullanışlı hale getirilebilir. Örneğin 100 için +, 20 için - ve 1 için de | kullanarak, 342 sayısı +++--|| şeklinde yazılabilir. Bu yazım şekli *simge-değer* olarak adlandırılır. Mısır rakamları bu türdedir ve Roma (ya da Romen) rakamları da aynı düşüncenin daha geliştirilmiş bir biçimidir.

*Konum-değer* sistemleri ise daha da gelişkindirler. Burada belirli simgeler sayının içindeki konumlarına göre farklı büyüklükte değerler alır. Örneğin, bir konum-değer sistemi olan ondalık sistemde, 1 rakamı 111 sayısı içinde en soldaki konumda 100, onun sağındaki konumda 10, en sağdaki konumda ise 1 değeri taşır.

## Konumsal yazım ve sayı tabanları

### Onluk sayı sistemi
Onluk (kimi zaman eşanlamlı olarak *desimal* ya da *onlu* olarak da adlandırılır) sayı sistemi tüm rakamlardan oluşur. Yani, 0 1 2 3 4 5 6 7 8 9 sayılarından oluşur. On adet sayı bulunduğu için bu rakam sisteminin tabanı 10'dur. 100 sayısı aynen veya (10)10 şeklinde yazılır.....
Örnek olarak ise; 
 
 376 = (3 x 100) + (7 x 10) + (6 x 1)örneğini verebiliriz.

### Oktal (sekizlik) sayı sistemi
Oktal sayı sisteminde sadece 0'dan 7'ye kadar olan rakamlar kullanılır. Örneğin oktal sistemdeki 147 = (147)8 sayısının desimal sistemdeki eşdeğerini bulalım:

 7x80=   7
 4x81=  32
 1x82=  64

 Toplam    =(103)10

 (147)8    =(103)10
 kodlarını yazmak için kullanıldı.

(“Oktal” sayı sistemi ilk bilgisayarlarda makine)

### Heksadesimal (Onaltılık) Sayı Sistemi

Heksadesimal sayı sisteminde 0'dan 9'a kadar olan sayılar ve A'dan F'ye kadar olan harfler kullanılır. Burada desimal sistemdeki 10'dan 15'e kadar olan sayılar A'dan F'ye kadar olan harflerle gösterilir.

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

Örneğin (C68)16 sayısı desimal sistemde 3176 sayısını ifade eder. Şöyle ki;

	8x160       =8

	6x161       =96

	12x162      =3072

	Toplam = (3176)10

        (C68)16=(3176)10

Günümüzde Heksadesimal sayı sistemi, bilgisayarlarda, makine kodlarını yazmak için kullanır.

### Herhangi bir tabanda verilen sayının başka bir tabanda yazılması

Herhangi bir tabanda verilen sayı önce 10 tabanına çevrilir. Bulunan değer istenen tabana dönüştürülür.
* Fakat Desimal, Oktal ve heksadesimal sayılar birbirine dönüştürülürken BCD kodundan faydalanılması tercih edilir. 
* Sayı sistemleri birbirlerine dönüştürülürken daha kolay bir yöntem izlenir: önce bu sayı BCD kodu ile yazılır, daha sonra ilgili sayı sistemine dönüştürülür. Kodlar kısmında dönüşümler verilmiştir.

*Onluk sayının ikili sayıya çevrilmesi:*

Onluk sayı ikili sayıya çevrilirken İkili sayının tabanı olan 2'ye bölünür.
9 Desimal sayısını İkili sayıya çevirelim. 
Tablodan görüldüğü gibi 9 sayısı 2'ye bölünür. Bu işlem bölüm sıfır olana kadar devam eder. Kalan kutusundaki rakamlar aşağıdan yukarı doğru alınarak yan yana yazılır. 
Sonuç: (9)10 = (1001)2

 İşlem	Bölüm	Kalan
 9 : 2	    4	     1
 4 : 2	    2	     0
 2 : 2	    1	     0
 1 : 2	    0	     1

*İkili sayının onluk sayıya çevrilmesi:*

(101)2 İkili sayısını Desimal sayıya çevirelim. 
1 x 2 ² + 0 x 2 ¹ + 1 x 2 º => 1 x 4 + 0 x 2 + 1 x 1 = 4 + 0 + 1 = (5)10 bulunur.

   2 ² = 4	 2 ¹ = 2	  2 º = 1
    1	          0	           1

*İkili sayının oktal sayıya Çevrilmesi:*

(11001111011101)2 sayısını sekizli sayı sistemine dönüştürelim.
Üçerli kümelere ayırma ve eksik bitleri tamamlama sonucunda,
 011 001 111 011 101
   3   1   7   3   5

Her bir kümenin temsil ettiği sekizli sayı yazılırsa
(11001111011101)2 = (31735)8 eşitliği elde edilir.

*İkili sayının heksadesimal sayıya Çevrilmesi:*

(11001111011101)2 sayısını onaltılı sayı sistemine dönüştürelim.
Dörderli kümelere ayırma ve eksik bitleri tamamlama sonucunda,
 0011 0011 1101 1101
    3    3    D    D
				 
Her bir kümenin temsil ettiği onaltılı sayı yazılırsa
(11001111011101)2 = (33DD)16 eşitliği elde edilir.

*Oktal sayının desimal sayıya çevrilmesi :*

(25)8 oktal sayısını desimal sayıya çevirelim.
1
 8 1 = 8
 8 0 = 1
 
2
 5
 
2 x 8 1 + 5 x 8 0 => 2 x 8 + 5 x 1 = 16 + 5 = (21)10 bulunur.

*Desimal sayının oktal sayıya çevrilmesi :*

Desimal sayı oktal sayıya çevrilirken oktal sayının tabanı olan 8'e bölünür. (84)10 desimal sayısını oktal sayıya çevirelim.

 İşlem Bölüm Kalan 
 84 : 8   10     4 
 10 : 8    1     2 
  1 : 8          1

Tabloda görüldüğü gibi 84 sayısı 8'e bölünür. Daha sonra bölüm kutusundaki sayı tekrar 8'e bölünür. (Bölüm sıfır olana kadar). Kalan kutusundaki sayılar aşağıdan yukarı doğru alınarak yan yana yazılır. Çıkan sayı oktal sayıdır. Sonuç: (84)10 = (124)8

*Heksadesimal sayının desimal sayıya çevrilmesi :*

(4F8)16 sayısını desimal sayıya çevirelim.

4 x 16 2 + F x 16 1 + 8 x 16 0 => 4 x 256 + F x 16 + 8 x 1 = 1024 + 240 + 8 = (1272)10 bulunur. Heksadesimal sayılarla hesap yapılırken harf olarak belirtilen sayıların rakama çevrilerek hesap yapılması daha kolay olacaktır. Örneğin (C = 12, A = 10, F = 15) gibi.

 16 2 = 256 16 1 = 16 16 0 = 1 
          4         F        8

*Desimal sayının heksadesimal sayıya çevrilmesi :*

Desimal sayıyı heksadesimal sayıya çevirirken, desimal sayı heksadesimalin tabanı olan 16'ya bölünür. (100)10 Desimal sayısını heksadesimal sayıya çevirelim.

    İşlem  Bölüm  Kalan 
 100 : 16      6      4 
   6 : 16      6    1/4

Desimal sayı, bölüm sıfır olana kadar 16'ya bölünür. Daha sonra kalan kutusundaki sayılar aşağıdan yukarı doğru alınarak yan yana yazılır. Sonuç: (100)10 = (64)16

### Sayı sistemi eşitlikleri

Aşağıda, tüm sayı sistemlerinin birbirlerine olan eşitlikleri görülmektedir.

 Sayı Sistemleri
 Desimal        0	1	2	3	4	5	6	7	8	9	10	 11	12	13	14	15
 İkili-Dual	0000	0001	0010	0011	0100	0101	0110	0111	1000	1001	1010	 1011	1100	1101	1110	1111
 Oktal   	0	1	2	3	4	5	6	7	10	11	12	13	 14	15	16	17
 Heksadesimal	0	1	2	3	4	5	6	7	8	9	A	 B	C	D	E	F