Sayısal Elektronik Sayı Sistemleri 5 Bir önceki bölümde Sayısal Sistemlerin sadece iki gerilim seviyesinde çalı ştı ğını ve bu nedenle gündelik hayatta kullandı ğımız sayı sistemleri yerine Binary ( İkilik) sayı sisteminin kullanıldı ğını anlatılmı ştı. Bir tasarımcı sayı sistemleri arasındaki ili şkiyi kavrayabilmek ve dönü şümlere hakim olabilmek zorundadır. Bu bölümde sayı sistemleri, dönü şümler , dört i şlem ve Sayısal Sistemlerde kullanılan Sayısal Kodlar anlatılacaktır. Bu bölümde a şa ğıdaki konular anlatılacaktır. Decimal (Onlu) Sayı Sistemi,Binary ( İkili) Sayı sistemi,Octal (Sekizli) Sayı sistemi ve Hexadecimal (Onaltılı)Sayı sistemi Sayı sistemleri dönü şümü Sayı sistemleri aritmete ği Kodlar ve kodlama BÖLÜM - 2 SAYI SISTEMLERI 6 2.1.DEC İMAL(ONLU) SAYI S İSTEM İ Decimal(Onlu) Sayı sistemi günlük hayatta kullandı ğımız 0,1,2,3,4,5,6,7,8,9 rakamlarından olu şur. Decimal(Onlu) Sayı sisteminde her sayı bulundu ğu basama ğa göre de ğer alır. Sistemin tabanı 10’dur. Örneğin 128 sayısı ; 128=1x10² + 2x10¹ + 8x10º 128=1x100 + 2x10 + 8x1 128=100 + 20 + 8 şeklinde yazılacaktır. Örnekten görüldü ğü gibi Decimal(Onlu) bir sayıda her basamak farklı üstel ifadelerle gösterilmi ştir. Bu üstel ifade o basama ğın a ğırlı ğı olarak adlandırılır. O halde Decimal(Onlu) bir sayıyı analiz ederken basamaklardaki rakam ile basamak a ğırlı ğını çarpmamız gerekiyor. Örnekte 3. basamaktaki 1sayısı 100 ile, 2. basamaktaki 2 sayısı 10 ile ve 1. Basamaktaki 8 sayısı 1 ile çarpılır. Her basamaktaki çarpım sonucu toplanarak analiz sonlandırılır. Not: 10º=1 oldu ğu unutulmamalı. n. basamak ..... 4. basamak 3. basamak 2. basamak 1. basamak Üstel de ğer 10 n-1 ........ 10 3 10 2 10 1 10 0 A ğırlık 10 n-1 ........ 1000 100 10 1 Örnek: Decimal(Onlu) 2784 sayısının analizini yapalım; 2784= 2x10³+7x10²+8x10¹+4x10º 2784=2x1000+3x100+8x10+4x1 2784=2000+700+80+4 2784=2784 şeklinde tanımlayabiliriz. 2.1.1.ONDALIKLI DEC İMAL(ONLU) SAYILAR E ğer verilen Decimal(Onlu) sayı ondalıklı ise bu durumda normal analiz i şlemi devam eder yalnız ondalıklı ifadeyi 0’ı takip eden negatif sayılarla tanımlarız. SAYISAL ELEKTRONIK 7 Örnek: 568,25 sayısının analizini yapınız. 568,25=5x10²+6x10¹+8x10º+2x10 - ¹ +5x10 - ² 568,25=500+60+8+0,2+0,05 568,25=568,25 şeklinde tamamlanabilir. 2.2. B İNARY ( İK İL İK) SAYI S İSTEM İ Binary ( İkilik) Sayı sisteminin tabanı 2’dir.Ve bu sistemde sadece “0” ve “1” rakamları kullanılmaktadır. Binary Sayı sisteminde’ de Decimal(Onlu) Sayı sisteminde oldu ğu gibi her sayı bulundu ğu basama ğın konum a ğırlı ğı ile çarpılır. Binary( İkilik) Sayı Sisteminde bulunan her ‘0’ veya ‘1’ rakamları B İT (BInary DigiT) adı ile tanımlanır.Binary( İkili) sayılar yazılırken en sa ğdaki basama ğa en dü şük de ğerlikli bit (Least Significant Bit-LSB),en soldaki basama ğa en yüksek de ğerlikli bit (Most Significant Bit-MSB) adı verilir. (1000100000101) MSB LSB Decimal(Onlu) Sayılıları sadece iki rakamdan olu şan Binary( İkilik) sayılarla tanımlayabilmemiz Sayısal Sistemlerin iki voltaj seviyesini kullanarak farklı büyüklükleri tanımlanmasının anla şılmasını sa ğlamaktadır. 2.2.1.B İNARY SAYILARIN YAZILI ŞI VE DEC İMAL SAYILARA ÇEVR İLMES İ Binary sayıların yazımında tabanın iki oldu ğu unutulmamalıdır. Binary(ikili) sayıları Decimal(Onlu) sayılara dönü ştürürken her bir bit basamak a ğırlı ğı ile çarpılıp bu sonuçların toplanması gerekir. n.basamak 4.basamak 3.basamak 2.basamak 1.basamak Üstel de ğer 2 n-1 2 3 2 2 2 1 2 0 A ğırlık 2 n-1 8 4 2 1 Birkaç örnekle hem Binary sayıların yazımını ve Decimal(Onlu) sayılara dönü şümünü inceleyelim. SAYISAL ELEKTRONIK 8 Örnek: (1010) 2 = ( ? ) 10 (1010) 2 = 1 x 2 3 + 0 x 2 2 + 1 x 2 1 + 0 x 2 0 (1010) 2 = 8 + 0 + 2 + 0 (1010) 2 = 10 Örnek: (11001) 2 = ( ? ) 10 (11001) 2 = 1x 2 4 +1x 2 3 +0x 2 2 +0x 2 1 +1x 2 0 (11001) 2 = 16 + 8 + 0 + 0 + 1 (11001) 2 = 25 Not: Binary ( İkilik) sayıların Decimal(Onlu) kar şılıkları bulunurken her basamak kendi basamak a ğırlı ğı ile çarpılır. Çarpım sonuçları toplanarak dönü şüm tamamlanır. Örnek: A şa ğıda verilen Binary( İkilik) sayıların Decimal(Onlu) (Onlu ) kar şılıklarını bulunuz. a-( 101 ) 2 = ( ) 10 b-(1101) 2 = ( ) 10 c-(10011) 2 = ( ) 10 d-(111) 2 = ( ) 10 e-(0110) 2 = ( ) 10 f-(11101) 2 = ( ) 10 2.2.2.ONDALIKLI B İNARY SAYILARIN DEC İMAL SAYILARA DÖNÜ ŞTÜRÜLMES İ Ondalıklı Binary (ikilik) sayıları Decimal (onlu) sayılara dönü ştürmek için izlenilecek yol çarpım iki metodudur. Ondalıklı kısma kadar olan kısmı normal analiz yöntemini kullanarak dönü ştürürken ondalıklı kısmın basamak a ğırlı ğı 0’ı takip eden negatif sayılar olarak belirlenir. Örnek: ( 111,101 ) 2 = (?) 10 ( 111,101 ) 2 = 1x2²+1x2¹+1x2º+1x2¯¹+0x2¯²+1x2¯³ ( 111,101 ) 2 = 1x4+1x2+1x1+1x½+0x¼+1x ? ( 111,101 ) 2 = 4+2+1+0,5+0+0,125 ( 111,101 ) 2 = (7,625) 10 SAYISAL ELEKTRONIK 9 Örnek: A şa ğıda verilen Ondalıklı Binary ( İkilik) sayıların Decimal(Onlu) kar şılıklarını bulunuz. a- ( 10,01) 2 = ( ) 10 b- (101,10) 2 = ( ) 10 c- (1,1101) 2 = ( ) 10 d - (110,11 ) 2 = ( ) 10 e- (1001,101) 2 = ( ) 10 f- (11,001) 2 = ( ) 10 2.2.3.DEC İMAL SAYILARIN B İNARY SAYILARA ÇEVR İLMES İ Decimal(Onlu) sayıları Binary( İkilik) sayılara çevirirken “Bölme-2” metodu kullanılır. Çıkan sonuç tersinden yazılır. Örnek: (33) 10 = ( ? ) 2 Bölünen Bölüm Kalan 33 ÷2 16 1 LSB 16 ÷2 8 0 8 ÷2 4 0 4 ÷2 2 0 2 ÷2 1 0 1 ÷2 0 1 MSB (100001) 2 (33) 10 = (100001 ) 2 SAYISAL ELEKTRONIK 10 Örnek: (172) 10 = ( ? ) 2 (172) 10 = (10111100) 2 sonucu elde edilir. A şa ğıda Tablo 2.1’de 0’dan 15’e kadar olan Decimal (Onlu) sayıların Binary ( İkilik) kar şılıkları verilmi ştir. Tablo 2.1 İkili sayı sistemi, sayısal sistemlerin bilgiyi tanımlayabilmesi için yeterli olmasına ra ğmen fazla sayıda basamak kullanılması, bu sayı sistemi ile ilgili i şlemlerin çok uzun sürmesi hata olasılı ğını beraberinde getirmektedir . Bölünen Bölüm Kalan 172 ÷2 86 0 86 ÷2 43 0 43 ÷2 21 1 21 ÷2 10 1 10 ÷2 5 1 5 ÷2 2 1 2 ÷2 1 0 1 ÷2 0 1 Decimal Binary 0 0000 1 0001 2 0010 3 0011 4 0100 5 0101 6 0110 7 0111 8 1000 9 1001 10 1010 11 1011 12 1100 13 1101 14 1110 15 1111 SAYISAL ELEKTRONIK 11 Örnek: A şa ğıda verilen Decimal(Onlu) sayıların Binary ( İkilik ) kar şılıklarını bulunuz. a-(13) 10 = ( ) 2 b-(78) 10 = ( ) 2 c-(239) 10 = ( ) 2 d-(256) 10 = ( ) 2 e-(512) 10 = ( ) 2 f-(1971) 10 = ( ) 2 2.2.4.ONDALIKLI DEC İMAL SAYILARIN B İNARY SAYILARA DÖNÜ ŞTÜRÜLMES İ Ondalıklı Decimal(Onlu) Sayıların Binary( İkilik) kar şılıkları bulunurken ondalıklı kısma kadar olan bölüm için normal çevirim yöntemi uygulanır. Ondalıklı kısım, kesirli kısmın sıfıra veya sıfıra yakın bir de ğere ula şıncaya kadar 2 ile çarpılır. Örnek: (7,8125) 10 = ( ? ) 2 ondalıklı decimal(onluk) sayısının binary(ikilik) kar şılı ğını yazınız. Çözüm: İlk önce tam kısımlar daha sonra ondalıklı kısımları çevirelim. B ö l ü m K a l a n 7 ÷2= 3 1 3 ÷2= 1 1 (7) 10 = ( 111 ) 2 1 ÷2= 0 1 0,8125 0, 625 0,250 0,500 × 2 × 2 × 2 × 2 1,625 1,250 0,500 1,000 1 1 0 1 Yazım sırası (0,8125) 10 = ( 0,1101 ) 2 olarak gösterilebilir. (7,8125) 10 =(111,1101) olarak yazılabilir. SAYISAL ELEKTRONIK 12 Örnek: A şa ğıdaki Ondalıklı Decimal sayıları Binary Sayılara dönü ştürün; a-(0,125) 10 = ( ? ) 2 b-(11,1451) 10 = ( ? ) 2 c-(125,65) 10 = ( ? ) 2 2.2.5. B İNARY SAYI S İSTEM İ AR İTMETİĞİ 2.2.5.1. B İNARY SAYILARDA TOPLAMA Binary( İkilik) sayı sistemindeki temel toplama kuralları; 0+0 = 0 Elde 0 Toplam 0 0+1 = 1 Elde 0 Toplam 1 1+0 = 1 Elde 0 Toplam 1 1+1 = 10 Elde 1 Toplam 0 1+1+1 = 11 Elde 1 Toplam 1 şeklinde belirtilebilir. Binary sayı sisteminde de iki sayı toplandı ğında e ğer sonuç bir haneye sı ğmıyorsa bir elde(cary) olu şur. Örnek: A şa ğıdaki iki Binary( İkilik) Sayıyı toplayınız. (011) 2 +(001) 2 Çözüm: (011) 2 +(001) 2 Toplama i şlemine Decimal(Onluk) Sayılarda oldu ğu gibi önce en dü şük basamaktan ba şlarız. Toplam Elde 1 1 0 1 1 + 0 0 1 1 0 0 SAYISAL ELEKTRONIK 13 En sa ğdaki sütun 1 + 1 = 0 1 olu şan elde bir üst basamakla toplanır Ortadaki sütün 1 + 1 + 0 = 0 1 olu şan elde bir üst basamakla toplanır En soldaki sütun 1 +0 + 0 = 1 0 Not: E ğer en yüksek de ğerlikli basamakların toplamında bir elde olu şmu ş olsaydı, bu toplam sonucunun en yüksek de ğerlikli biti olarak kar şımıza çıkardı. Örnek: A şa ğıda verilen toplama i şlemlerini gerçekle ştirin. a- (11) 2 3 b- (100) 2 c- (111) 2 d- (0110) 2 c- (11101) 2 + (11) 2 + 3 + (11) 2 + (11) 2 + (1111) 2 (1001) 2 (110) 2 6 (111) 2 (1010) 2 (10101) 2 + (111) 2 (101101) 2 Örnek: A şa ğıda verilen toplama i şlemlerini gerçekle ştirin a- (101) 2 b- (110) 2 c- (1111) 2 d- (1111) 2 c- (10111) 2 + ( 11) 2 + (10) 2 + (111) 2 + (1111) 2 (1101) 2 ( ) 2 ( ) 2 ( ) 2 ( ) 2 + (101) 2 ( ) 2 2.2.5.2 B İNARY SAYILARDA ÇIKARMA Binary( İkilik) sayı sistemindeki temel çıkarma kuralları; 0-0 =0 Borç 0 Sonuç 0 1-1 = 0 Borç 0 Sonuç 0 1-0 = 1 Borç 0 Sonuç 1 0-1 = 1 Borç 1 Sonuç 1 şeklinde belirtilebilir. Binary sayı sisteminde de küçük de ğerlikli bir basamaktan büyük de ğerlikli bir basamak çıkarıldı ğında,bir üstteki basamaktan bir borç(borrov) alınır ve çıkarma i şlemi tamamlanır. SAYISAL ELEKTRONIK 14 Örnek: A şa ğıda verilen iki Binary( İkilik) Sayıyı çıkarın. (011) 2 5 - (001) 2 - 3 (010) 2 2 Bir alt basama ğa Bir üst basmaktan borç 1 borç verildi ğinden alındı ğında bu sütun 10 olur (0 – 0= 0 ) (10 – 1 = 1 ) Örnek: A şa ğıda verilen çıkarma i şlemlerini gerçekle ştirin. a- (11) 2 b- (100) 2 c- (101) 2 d- (1010) 2 - (10) 2 - (011) 2 - (011) 2 - (0011) 2 ( 01) 2 (001) 2 (010) 2 (0111) 2 Örnek: A şa ğıda verilen çıkarma i şlemlerini gerçekle ştirin a- (111) 2 b- (110) 2 c- (1111) 2 d- (1011) 2 - (011) 2 - (10) 2 - (0111) 2 + (1001) 2 ( ) 2 ( ) 2 ( ) 2 ( ) 2 0 1 1 0 1 - 0 1 1 0 1 0 SAYISAL ELEKTRONIK 15 2.2.5.2.1TAMAMLAYICI (KOMPLEMENTER) AR İTMETİĞİ Sayı sistemlerinde direkt çıkarma yapılaca ğı gibi Tamamlayıcı (Komplementer) yöntemiyle de çıkarma yapılabilir Tamamlayıcı (Komplementer) yöntemiyle çıkarma i şlemi aslında bir toplama i şlemidir. Bu i şlemde bir üst basamaktan borç alınmaz. Her sayı sistemine ili şkin iki adet tümleyen (komplementer) bulunabilir. Bunlar; r sayı sisteminin tabanını göstermek üzere 1. r-1. Komplementer 2. r. Komplementer olarak gösterilebilir. Taban yerine kondu ğunda bu iki tümleyen (komplementer) Binary( İkilik) sayılarda 1. ve 2. Tümleyen (komplementer), Decimal(Onlu) sayılarda 9. ve 10. Tümleyen (komplementer) adını alır. r-1 Tümleyen (komplementer) n haneli bir tamsayı kısmı ve m haneli bir kesiri bulunan r tabanında bir N pozitif sayı için: r-1. Komplementeri = r n -r -m -N olur. r. Tümleyen (komplementer) n haneli bir tamsayı kısmı bulunan r tabanında bir N pozitif sayı için , N’ in r. Komplementeri = r n - N şeklinde bulunur. Not: Binary sayılarda kolay bir yöntem olarak 2’ ye tümleyen 1’e tümleyene “1” eklenerek elde edilebilir. 2’ye tümleyen = 1’ e tümleyen+1 Bire-Tümleyenle Çıkarma: Bir Binary(ikilik) sayının 1. Komplementeri basitçe her bir bitin tersinin alınması ile bulunur. İki Binary( İkilik) sayıyı 1.Tümleyen (komplementer) yardımı ile çıkarmak için; a) Çıkan sayının 1. Tümleyen (komplementer)i bulunur. 1. Tümleyen (komplementer) bulunurken çıkan sayı ile çıkarılan sayının basamak sayısının e şit olması gerekir. SAYISAL ELEKTRONIK 16 b) Çıkarılan sayı ile çıkan sayının 1. Tümleyen (komplementer)i toplanır. c) En büyük de ğerlikli basamakta elde 1 olu şursa bu i şlem sonucunun pozitif oldu ğu anlamına gelir d) Do ğru sonuca ula şmak için elde 1 buradan alınarak en küçük de ğerlikli basamakla toplanır. e) E ğer elde 1 olu şmamı şsa sonuç negatiftir do ğru cevabı bulmak için sonuç terslenerek yazılır. Örnek: A şa ğıdaki iki Binary( İkilik) sayıyı 1. Tümleyen (komplementer) yardımı çıkarın. 11001 + 01100 1 00101 E ğer elde 1 olu şmu şsa sonuç pozitiftir ve gerçek sonuç + 1 eldenin en sa ğdaki basama ğa eklenmesi ile bulunur. (00110) 2 Örnek: A şa ğıdaki iki Binary( İkilik) sayıyı 1. Tümleyen (komplementer) yardımı çıkarın. 1001 + 0010 1011 E ğer elde 1 olu şmamı şsa sonuç negatiftir ve gerçek sonuç ç ıkan sonucun terslenmesi ile bulunur. -(0100) 2 (11001) 2 Ç ıkan sayının (10011) 2 (01100) 2 -(10011) 2 1.Tümleyen (komplementer)i (1001) 2 Ç ıkan sayının (1101) 2 (0010) 2 - (1101) 2 1.Tümleyen SAYISAL ELEKTRONIK 17 Örnek: A şa ğıdaki çıkarma i şlemlerini 1. Tümleyen (komplementer) yöntemi ile gerçekle ştirin. İkiye-Tümleyenle Çıkarma: Binary sayının 2. Tümleyen (komplementer)i o sayının 1. Tümleyene (komplementer) 1 eklenerek bulunur. 2. Tümleyen (komplementer)= 1. Tümleyen (komplementer)+1 İki Binary sayıyı 2. Tümleyen (komplementer) yardımı ile birbirinden çıkarmak için; a) Çıkan sayının 2. Tümleyen (komplementer)i bulunur. Çıkan sayı ile çıkarılan sayının basamak sayıları e şit olmalıdır. b) Çıkarılan sayı ile çıkan sayının 2. tümleyen (komplementer)i toplanır. c) E ğer toplama i şlemi sonucunda en yüksek de ğerlikli basamakta bir elde olu şmu şsa çıkan sonuç pozitiftir, elde atılarak gerçek sonuca ula şılır. d) Toplam sonucunda bir elde olu şmamı şsa sonuç negatiftir. Çıkan sonucun tersi alındıktan sonra 1 eklenerek gerçek sonuca ula şılır. Örnek: A şa ğıdaki iki Binary( İkilik) sayıyı 2. Tümleyen (komplementer) yardımı çıkarın. 11001 + 01101 1 00110 E ğer elde 1 olu şmu şsa sonuç pozitiftir ve gerçek sonuç eldenin atılması ile bulunur. (00110) 2 a- ( 10011 ) 2 b- (011011) 2 c- (10001) - ( 10000) 2 - (100111) 2 - (111) 2 (10100) 2 1.Tümleyen 10011 01100 -(10011) 2 (komplementer) + 1 2.Tümleyen 01101 SAYISAL ELEKTRONIK 18 Örnek: A şa ğıdaki iki Binary( İkilik) sayıyı 2. Tümleyen (komplementer) yardımı çıkarın. 1011 + 0001 1100 E ğer elde 1 olu şmamı şsa sonuç negatiftir ve gerçek sonuç ç ıkan sonucun tersine “1” eklenmesi ile bulunur. 0011 + 1 (- 0100) 2 olur. Örnek: A şa ğıdaki çıkarma i şlemlerini 2. Tümleyen (komplementer) yöntemi ile gerçekle ştirin. 2.2.5.3 B İNARY ( İK İL İK) SAYILARDA ÇARPMA Binary( İkilik) Sayılarla Çarpma i şlemi Decimal(Onluk) sayı sisteminin aynısı olup temel çarpma kuralları a şa ğıdaki gibidir. 0 x 0 = 0 0 x 1 = 0 1 x 0 = 0 1 x 1 = 1 Örnek: A şa ğıdaki iki Binary( İkilik) Sayıyının çarpımını hesaplayınız. (11) 2 3 x (11) 2 x 3 9 Çarpma i şlemi Decimal sayılardaki gibi gerçekle şir. (1011) 2 1.Komplementeri 1111 0000 - (1111 ) 2 + 1 2. Komplementer 0001 a- ( 11101 ) 2 b- (001100) 2 c- (11011) - ( 11010) 2 - (101000) 2 - (101) 2 1 1 x 1 1 1 1 + 1 1 1 0 0 1 SAYISAL ELEKTRONIK 19 Örnek: A şa ğıda verilen çarpma i şlemlerini gerçekle ştirin. a- (11) 2 b- (100) 2 c- (101) 2 d- (1010) 2 x (10) 2 x (011) 2 x (011) 2 x (1001) 2 (11 0) 2 (1100) 2 (1111) 2 (1011010) 2 Örnek: A şa ğıda verilen çarpma i şlemlerini gerçekle ştirin a- (111) 2 b- (110) 2 c- (1111) 2 d- (1011) 2 x (101) 2 x (110) 2 x (111) 2 x (1001) 2 ( ) 2 ( ) 2 ( ) 2 ( ) 2 2.2.5.4 B İNARY ( İK İL İK) SAYILARDA BÖLME Binary( İkilik) Sayılarda kullanılan temel bölme kuralları a şa ğıdaki gibidir. Binary( İkilik) Sayılardaki bölme i şlemi Decimal (Onluk) Sayı sisteminin aynısıdır. 0 ÷ 0 = 0 0 ÷ 1 = 0 1 ÷ 0 = 0 1 ÷ 1 = 1 Örnek: A şa ğıdaki Bölme i şlemini gerçekle ştirin. (1100) 2 ÷ (100) 2 1100 100 12 4 -100 11 - 12 3 0100 00 - 100 00 SAYISAL ELEKTRONIK 20 Örnek: A şa ğıda verilen bölme i şlemlerini gerçekle ştirin. a- (110) 2 ÷ (11) 2 b- (110) 2 ÷ (10) 2 c- (1101) 2 ÷ (1010) 2 2.3. OCTAL (SEK İZL İ) SAYI S İSTEM İ Sayısal Sistemler hernekadar ikilik sayı sistemini kullansalar da bir tasarımcı için Binary ( İkilik) sayılarla i şlem yapmak zahmetli bir i şlem olması nedeniyle farklı sayı sistemlerinin kullanımı tasarımcılar arasında yaygınla şmı ştır. Kullanılan bu sayı sistemlerinden Octal (Sekizli) Sayı sisteminin tabanı sekiz olup 0,1,2,3,4,5,6,7 rakamları bu sayı sisteminde kullanılır. 2.3.1. OCTAL(SEK İZL İ) SAYILARIN YAZILI ŞI VE DEC İMAL(ONLU) SAYILARA ÇEVR İLMES İ Octal(Sekizli) sayıları Decimal(Onlu) sayılara çevirmek için her sayı bulundu ğu basama ğın konum a ğırlı ğı ile çarpılır.Bu çarpım sonuçları toplanarak sonuç elde edilir. n.basamak 4.basamak 3.basamak 2.basamak 1.basamak Üstel de ğer 8 n-1 8 3 8 2 8 1 8 0 A ğırlık 8 n-1 512 64 8 8 Örnek: ( 47 ) 8 = (?) 10 dönü şümünü gerçekle ştirin? ( 47 ) 8 = 4x8¹+7x8º ( 47 ) 8 = 4x8+7x1 ( 47 ) 8 = 32+7 ( 47 ) 8 = (39) 10 Örnek: A şa ğıda verilen Octal(Sekizli) sayıların Decimal(Onluk) kar şılıklarını bulunuz. a-(13) 8 = ( ) 10 b-(78) 8 = ( ) 10 c-(139) 8 = ( ) 10 d-(512) 8 = ( ) 10 e-(1971) 8 = ( ) 10 SAYISAL ELEKTRONIK 21 2.3.2.ONDALIKLI OCTAL(SEK İZL İ) SAYILARIN DEC İMAL(ONLUK) SAYILARA ÇEVR İLMES İ Ondalıklı Octal(Sekizli) sayıları Decimal (onluk) sayılara dönü ştürmek için izlenilecek yol çarpım 8 metodudur. Ondalıklı kısma kadar olan kısmı normal analiz yöntemini kullanarak dönü ştürürken ondalıklı kısmın basamak a ğırlı ğı 0’ı takip eden negatif sayılar olarak belirlenir. Örnek: ( 153,51 ) 8 = (?) 10 dönü şümünü gerçekle ştirin? ( 153,51 ) 8 =1x8²+5x8¹+3x8º+5x8¯¹+1x8¯² ( 153,51 ) 8 = 1x64+5x8+3x1+5x0,125+1x0,0156 ( 153,51 ) 8 = 64+40+3+0,625+0,0156 ( 153,51 ) 8 =(103,6406) 10 Örnek: A şa ğıda verilen Ondalıklı Octal(Sekizli) sayıların Decimal(Onluk) kar şılıklarını bulunuz. a-(19,25) 8 = ( ) 10 b-(137,45) 8 = ( ) 10 2.3.3.DEC İMAL(ONLU) SAYILARIN OCTAL(SEK İZL İ) SAYILARA ÇEVR İLMES İ Decimal(Onluk) sistemden Octal(Sekizli) sisteme dönü şüm “Bölme-8 metodu ile yapılır. Çıkan sonuç tersinden yazılır. Örnek: (247) 10 = ( ? ) 8 Bölünen Bölüm Kalan 247 ÷8 30 7 LSB 30 ÷8 3 6 3 ÷8 0 3 MSB (367) 8 SAYISAL ELEKTRONIK 22 Örnek: A şa ğıda verilen Decimal(Onluk) sayıların Octal(Sekizli) kar şılıklarını bulunuz. a-(13) 10 = ( ) 8 b-(78) 10 = ( ) 8 c-(239) 10 = ( ) 8 d-(512) 10 = ( ) 8 e-(1971) 10 = ( ) 8 2.3.4.ONDALIKLI DEC İMAL(ONLU) SAYILARIN OCTAL(SEK İZL İ) SAYILARA ÇEVR İLMES İ Ondalıklı Decimal(Onlu) Sayıları Octal(Sekizli) sayılara dönü ştürürken ondalıklı kısma kadar olan bölüm için normal çevirim yöntemi uygulanır. Ondalıklı kısım ise 8 ile çarpılır. Bu i şlem kesirli kısım sıfıra veya yakın bir de ğere ula şıncaya kadar devam eder. Örnek: (153,513) 10 = ( ? ) 8 İlk önce tam kısımlar daha sonra ondalıklı kısımları çevirelim. Bölünen Bölüm Kalan 153 ÷8 19 1 LSB 19 ÷8 2 3 3 ÷8 0 2 MSB (231) 8 4 0 6 5 1 (0,513) 10 = ( 0,40651 ) 2 olarak gösterilebilir. (153,513) 10 = ( 231,40651 ) 2 0,513 0,104 0, 832 0,656 0,248 × 8 × 8 × 8 × 8 × 8 4,104 0,832 6,656 5,248 1,984 SAYISAL ELEKTRONIK 23 Örnek: A şa ğıda verilen Ondalıklı Decimal(Onluk) sayıların Octal(Sekizli) kar şılıklarını bulunuz. a-(13,132) 10 = ( ) 8 b-(1971,56) 10 = ( ) 8 2.3.5.B İNARY( İK İL İK) SAYILARIN OCTAL(SEK İZL İ) SAYILARA ÇEVR İLMES İ Binary( İkilik) sayıları Octal(Sekizli) sayılara dönü ştürürken,Binary sayı sa ğdan ba şlayarak sola do ğru üçerli gruplara ayrılır. Her grubun Octal kar şılı ğı bulunarak çevirme i şlemi tamamlanmı ş olur. Örnek: (101110011) 2 = ( ? ) 8 İlkönce Binary sayı sa ğdan sola do ğru üçerli gruplara ayrılır: 5 6 3 Bu üçerli grupların Octal Kar şılıkları yazılarak i şlem tamamlanır. (101110011) 2 = ( 563 ) 8 Not: Üçerli gruplandırmayı sa ğlamak için en sola gerekti ği kadar “0” ilave edilir. Örnek: (10110) 2 = ( ? ) 8 En sola eklenen S ıfır üçlü grup Olu şmasını sa ğlar 2 6 (10110) 2 = ( 26 ) 8 dönü şümü sa ğlanır. 110 011 101 010 110 SAYISAL ELEKTRONIK 24 Tam ve kesirli kısmı olan bir Binary sayı halinde tam kısım için,virgülden ba şlayarak sola do ğru, kesirli kısım içinse virgülden ba şlayarak sa ğa do ğru üçerli gruplar hazırlanır. Örnek: (010111,101001) 2 = ( ? ) 8 Tam kısmı sa ğdan sola do ğru, ondalıklı k ısmı soldan sa ğa do ğru üçerli gruplara ayıralım , 2 7 , 5 1 (010111,101001) 2 = ( 27,51 ) 8 Örnek: A şa ğıdaki Binary( İkilik) Octal Dönü şümlerini gerçekle ştirin a-(11) 2 = ( ) 8 b-(11011) 2 = ( ) 8 c-(101111) 2 = ( ) 8 d-(111,11) 2 = ( ) 8 e-(1110,101) 2 = ( ) 8 2.3.6. OCTAL(SEK İZL İ) SAYILARIN B İNARY( İK İL İK) SAYILARA ÇEVR İLMES İ Octal (Sekizli) sayıları Binary( İkilik) sayılara ; her Octal (Sekizli) sayının üç bitlik Binary ( İkilik) kar şılı ğı yazılması ile çevirim gerçekle ştirilir. 010 111 101 001 SAYISAL ELEKTRONIK 25 Örnek: ( 237) 8 =(?) 2 Her Octal Sayıyı üç bitlik Binary kar şılıkları ile ifade edelim. 010 011 111 ( 237) 8 =(010011111) 2 şeklinde bulunur. A şa ğıda Tablo 2.3’de 0’dan 15’e kadar olan Decimal(Onlu) ve Binary( İkilik) sayıların Octal (Sekizlik) kar şılıkları verilmi ştir. Tablo2.2 Decimal Binary Octal 0 0000 0 1 0001 1 2 0010 2 3 0011 3 4 0100 4 5 0101 5 6 0110 6 7 0111 7 8 1000 10 9 1001 11 10 1010 12 11 1011 13 12 1100 14 13 1101 15 14 1110 16 15 1111 17 2 3 7 SAYISAL ELEKTRONIK 26 Örnek: A şa ğıdaki Binary( İkilik) Octal Dönü şümlerini gerçekle ştirin a-(16) 8 = ( ) 8 b-(110) 8 = ( ) 8 c-(1763) 8 = ( ) 8 d-(37618) 8 = ( ) 8 2.3.7. OCTAL (SEK İZL İ) SAYI S İSTEM İ AR İTMETİĞİ 2.3.7.1. OCTAL (SEK İZL İ) SAYILARDA TOPLAMA Decimal sayı sistemindeki bütün toplama kuralları Octal sayı sisteminde de geçerlidir. Örnek: A şa ğıda verilen toplama i şlemlerini gerçekle ştirin. a- (263) 8 İşlemin 1. Haneler 3+7=2 Elde 1 + (157) 8 yapılı şı 2. Haneler Elde1+6+5=4 Elde 1 (442) 2 3. Haneler Elde1+2+1=4 Bu aritmetik i şlemi ,sekizli sayıyı bilinen bir sayı sistemine dönü ştürerek gerçekle ştirebiliriz. A şa ğıda Octal sayının Binary kar şılıkları yazılarak Aritmetik i şlem geçekle ştirilmi ştir. (2 6 3) 8 (1 5 7) 8 (010110011) 2 100 100 010 + (001101111) 2 010 110 011 001 101 111 (100100010) 2 4 4 2 Örnek: A şa ğıda verilen toplama i şlemlerini gerçekle ştirin a- (17) 8 b- (260) 8 c- (1736) 8 + (33) 8 + (21) 8 + (345) 8 ( ) 8 ( ) 8 ( ) 8 SAYISAL ELEKTRONIK 27 2.3.7.2 OCTAL (SEK İZL İ) SAYILARDA ÇIKARMA Decimal sayı sistemindeki bütün çıkarma kuralları Octal sayı sisteminde geçerlidir. Örnek: A şa ğıda verilen çıkarma i şlemini gerçekle ştirin. a- (514) 8 İşlemin 1. Haneler 4 -2=2 - (452) 8 yapılı şı 2. Haneler (Borç8+1)-5=4 ( 042) 8 3. Haneler Kalan4 -4=0 Örnek: A şa ğıda verilen çıkarma i şlemlerini gerçekle ştirin a- (57) 8 b- (1347) 8 c- (2642) 8 - (43) 8 -(1274) 8 - (6114) 8 ( ) 8 ( ) 8 ( ) 8 2.4.HEXADECIMAL (ONALTILI) SAYI S İSTEM İ Hexadecimal (Onaltılık) sayı sisteminin tabanı 16 olup,0-9’a kadar rakamlar ve A-F’ ye kadar harfler bu sayı sisteminde tanımlıdır. Bu sayı sisteminde rakamlar bu sembollerin yan yana yazılmasından elde edilir. Hanelerin basamak a ğırlıkları sa ğdan sola do ğru 16’nın artan kuvvetleri belirtilir. A şa ğıdaki tablo 0-15 arası Decimal(Onlu) sayıların Hexadecimal kar şılıklarını vermektedir. Tablo 2.4 Decimal Hexadecimal Decimal Hexadecimal 0 0 8 8 1 1 9 9 2 2 10 A 3 3 11 B 4 4 12 C 5 5 13 D 6 6 14 E 7 7 15 F SAYISAL ELEKTRONIK 28 2.4.1.HEXADEC İMAL (ONALTILIK) SAYILARIN YAZILIŞI VE DEC İMAL(ONLU) SAYILARA ÇEVR İLMES İ Hexadecimal (Onaltılık) sayıları Decimal(Onlu) sayılara çevirmek için her sayı bulundu ğu basama ğın konum a ğırlı ğı ile çarpılır.Bu çarpım sonuçları toplanarak sonuç elde edilir. n.basamak ..... 3.basamak 2.basamak 1.basamak Üstel de ğer 16 n-1 ........ 16 2 16 1 16 0 A ğırlık 16 n-1 ........ 256 16 1 Örnek: ( 39 ) 16 = (?) 10 dönü şümünü gerçekle ştiriniz. ( 39 ) 16 = 3x16¹+9x16º ( 39 ) 16 = 48+9 ( 39 ) 16 = (57) 10 Örnek: ( 1A3 ) 16 = (?) 10 dönü şümünü gerçekle ştirin? ( 1A3 ) 16 = 1x16²+Ax16¹+3x16º A=10 ise ( 1A3 ) 16 = 1x256+10x16+3x1 ( 1A3 ) 16 = 256+160+3 ( 1A3 ) 16 = (419) 10 Örnek: A şa ğıda verilen Hexadecimal(Onaltılık) sayıların Decimal(Onluk) kar şılıklarını bulunuz. a-(13) 16 = ( ) 10 b-(B8) 16 = ( ) 10 c-(1C9) 16 = ( ) 10 d-(ABF) 16 = ( ) 10 SAYISAL ELEKTRONIK 29 2.5.2.ONDALIKLI HEXADEC İMAL(ONALTILIK) SAYILARIN DEC İMAL(ONLUK) SAYILARA ÇEVR İLMES İ Ondalıklı Hexadecimal(Onaltılık) sayıları Decimal (onluk) sayılara dönü ştürmek için izlenilecek yol “Çarpım 16” metodudur. Ondalıklı kısma kadar olan bölüm normal analiz yöntemini kullanarak dönü ştürülürken ondalıklı kısmın basamak a ğırlı ğı 0’ı takip eden negatif sayılar olarak belirlenir. Örnek: ( A,3 ) 16 = (?) 10 dönü şümünü gerçekle ştirin? ( A , 3 ) 16 = Ax16º+3x16?¹ ( A,3 ) 16 = 10x1+3x0,0625 ( A,3 ) 16 = 10+0,1875 ( A,3 ) 16 = (10,1875) 10 2.5.3.DEC İMAL(ONLU) SAYILARIN HEXADEC İMAL(ONALTILIK) SAYILARA ÇEVR İLMES İ Decimal(Onlu) sistemden Hexadecimal(Onaltılık) sisteme dönü şüm “Bölme-16 metodu ile yapılır. Çıkan sonuç tersinden yazılır. Örnek: (1357) 10 = (?) 16 Bölünen Bölüm Kalan 1357 ÷16 84 13(D) LSB 84 ÷16 5 4 5 ÷16 0 5 MSB (54D) 16 (1357) 10 = (54D) 16 Örnek: A şa ğıda verilen Decimal(Onluk) sayıların Hexadecimal(Onaltılık) kar şılıklarını bulunuz. a-(13) 10 = ( ) 16 b-(78) 10 = ( ) 16 c-(239) 10 = ( ) 16 d-(1512) 10 = ( ) 16 SAYISAL ELEKTRONIK 30 2.5.4.ONDALIKLI DEC İMAL(ONLU) SAYILARIN HEXADEC İMAL(ONALTILIK) SAYILARA ÇEVR İLMES İ Ondalıklı Decimal(Onlu) Sayıları Hexadecimal(Onaltılık) sayılara dönü ştürürken ondalıklı kısma kadar olan bölüm için normal çevirim yöntemi uygulanır. Ondalıklı kısım ise 16 ile çarpılır. Bu i şlem kesirli kısım sıfıra veya sıfıra en yakın de ğere ula şıncaya kadar devam eder. Örnek: (25,125) 10 = ( ? ) 16 İlk önce tam kısımlar daha sonra ondalıklı kısımları çevirelim. Bölünen Bölüm Kalan 25 ÷16 1 9 LSB 1 ÷16 0 1 MSB (19) 16 (0,125) 10 = (0,2 ) 16 (25,125) 10 = ( 19,2 ) 16 olarak yazılır. 2.5.5.B İNARY( İK İL İK) SAYILARIN HEXADEC İMAL(ONALTILIK) SAYILARA ÇEVR İLMES İ Binary( İkilik) sayıları Hexadecimal(Onaltılık) sayılara dönü ştürürken,Binary sayı sa ğdan ba şlayarak sola do ğru dörderli gruplara ayrılır. Her grubun Hexadecimal kar şılı ğı bulunarak çevirme i şlemi tamamlanmı ş olur. Örnek: (100111000011) 2 = ( ? ) 16 İlkönce Binary sayı sa ğdan sola do ğru dörderli gruplara ayrılır: 9 C 3 Bu dörderli grupların Hexadecimal kar şılıkları yazılarak i şlem tamamlanır. (100111000011) 2 = ( 9C3 ) 16 0,125 × 16 2,00 1100 0011 1001 SAYISAL ELEKTRONIK 31 Not:Dörderli gruplandırmayı sa ğlamak için en sola gerekti ği kadar “0” ilave edilir. Örnek: (101110) 2 = ( ? ) 16 En sola eklenen İki sıfır dörtlü Grup olu şmasını sa ğlar 2 E (10110) 2 = ( 2E ) 16 dönü şümü sa ğlanır. Tam ve kesirli kısmı olan bir Binary sayı halinde tam kısım için,virgülden ba şlayarak sola do ğru, kesirli kısım içinse virgülden ba şlayarak sa ğa do ğru dörderli gruplar hazırlanır. Örnek: (10110111,101001) 2 = ( ? ) 16 Tam kısmı sa ğdan sola do ğru, ondalıklı k ısmı soldan sa ğa do ğru dörderli gruplara ayıralım , B 7 , A 4 (10110111,101001) 2 = ( B7,A4 ) 16 Örnek: A şa ğıdaki Binary( İkilik) Hexadecimal(Onaltılık) Dönü şümlerini gerçekle ştirin a-(17) 2 = ( ) 16 b-(101111) 2 = ( ) 16 c-(1110,101) 2 = ( ) 16 0010 1110 1011 0111 1010 0100 SAYISAL ELEKTRONIK 32 2.5.6. HEXADEC İMAL(ONALTILI) SAYILARIN B İNARY( İK İL İK) SAYILARA ÇEVR İLMES İ Hexadecimal (Onaltılı) sayıları Binary( İkilik) sayılara ; her Hexadecimal (Onaltılı) (Sekizli) sayının dört bitlik Binary ( İkilik) kar şılı ğı yazılması ile çevirim gerçekle ştirilir. Örnek: ( F7C) 16 =(?) 2 Her Hexadecimal Sayıyı dört bitlik Binary kar şılıkları ile ifade edelim. 1111 0111 1100 ( F7C) 16 =(111101111100) 2 şeklinde bulunur. Örnek: A şa ğıdaki Hexadecimal(Onaltılı) Binary( İkilik) Dönü şümlerini gerçekle ştirin a-(16) 16 = ( ) 2 b-(CB1) 16 = ( ) 2 c-(1763) 16 = ( ) 2 d-(FA18) 16 = ( ) 2 A şa ğıda Tablo 2.5’de 0’dan 15’e kadar olan Decimal(Onlu) ve Binary( İkilik) , Octal(Sekizlik) sayıların Hexadecimal(Onaltılık) kar şılıkları verilmi ştir. F 7 C SAYISAL ELEKTRONIK 33 Tablo 2.5 2.5.7. HEXADEC İMAL (ONALTILIK) SAYI S İSTEM İ AR İTMETİĞİ 2.5.7.1HEXADEC İMAL (ONALTILIK) SAYILARDA TOPLAMA Hexadecimal sayılarla iki şekilde toplama i şlemini gerçekle ştirebiliriz.Birinci yöntem sayının direk toplanması, di ğer bir yöntem ise Hexadecimal sayının herhangi bir sayı sistemine dönü ştürülerekmeden toplama i şleminin gerçekle ştirilmesi. A şa ğıdaki örnekte her iki şekilde gösterilmektedir. Örnek: A şa ğıda verilen toplama i şlemlerini gerçekle ştirin. a- (A17) 16 İşlemin 1. Haneler 3+7=10(A) + (1F3) 16 yapılı şı 2. Haneler 1+F=0 Elde 1 (C0A) 16 3. Haneler Elde1+A+1=C Hexadecimal sayılarıda ikili sayılara çevrilerek toplama i şlemi gerçekle ştirilebilir. Örnek: A şa ğıdaki iki Hexadecimal sayıyı ikilik sayılara çevirerek toplayın. ( 9 E 5 ) 16 Decimal Binary Octal Hexadecimal 0 0000 0 0 1 0001 1 1 2 0010 2 2 3 0011 3 3 4 0100 4 4 5 0101 5 5 6 0110 6 6 7 0111 7 7 8 1000 10 8 9 1001 11 9 10 1010 12 A 11 1011 13 B 12 1100 14 C 13 1101 15 D 14 1110 16 E 15 1111 17 F (56B) 16 + (47A) 16 SAYISAL ELEKTRONIK 34 Örnek: A şa ğıda verilen toplama i şlemlerini gerçekle ştirin a- (2101) 16 b- (DEB0) 16 c- (7FFF) 16 d- (6734) 16 + (CE) 16 + (1C0) 16 + (7FF) 16 + (A7C9) 16 ( ) 16 ( ) 16 ( ) 16 ( ) 16 2.5.7.2 HEXADEC İMAL (ONALTILIK) SAYILARDA ÇIKARMA Temel çıkarma kuralları geçerli olmak üzere Hexadecimal (Onaltılık) Sayılarla çıkarma i şlemi yaparken sayıların direk çıkarılması, Tümleyen aritmeti ği gibi yöntemler izlenebilece ği gibi bilinen bir sayı sistemine dönü şümü gerçekle ştirerek bu sayı sisteminde çıkarma i şlemi yapılabilir. Örnek: A şa ğıda verilen çıkarma i şlemini gerçekle ştirin. Çözüm: Hexadecimal B yerine Hexadecimal A yerine 11 sayısını yazarız. 10 sayısını yazarız a- (56B) 16 İşlemin 1. Haneler 11 -10=1 - (47A) 16 yapılı şı 2. Haneler (Borç16+6)-7=15(F) ( 0F1) 16 3. Haneler Kalan4 -4=0 Hexadecimal sayılarda ikilik sayılara çevrilerek çıkarma i şlemi gerçekle ştirilebilir (56B) 16 (47A) 16 (010101101011) 2 (100111100101) 2 +(010001111010) 2 0101 0110 1011 0100 0111 1010 (10011100101) 2 9 E 5 (56B) 16 + (47A) 16 (9E5) 16 SAYISAL ELEKTRONIK 35 Tümleyen (komplementer) (Tümleyen) Yöntemi İle Hexadecimal Sayıların Çıkarılması Hexadecimal sayılar 15. ve 16. olmak üzere iki adet tümleyen (komplementer)e sahiptir. Bu iki Tümleyen (komplementer) yardımı ile çıkarma i şlemi gerçekle ştirmek için ; 1) Hexadecimal Sayının 15. Tümleyen (komplementer)i her basama ğın “ F” sayısından çıkarılması ile bulunur. 2) Hexadecimal Sayının 16. Tümleyen (komplementer)i 15. Tümleyen (komplementer)e 1 eklenerek bulunur. şeklinde Hexadecimal sayıların Komplementeleri bulunur. Örnek: A şa ğıda verilen Hexadecimal sayının 15. Tümleyen (komplementer)ini bulunuz. Örnek: A şa ğıda verilen Hexadecimal sayının 16. Komplementerini bulunuz. Hexadecimal (Onaltılık) sayıları Tümleyen yardımıyla çıkarmak için; 1) Çıkan sayının 15. veya 16. Tümleyen (komplementer)i bulunur. 2) Ana sayı ile çıkan sayının15. veya 16. Tümleyen (komplementer)i toplanır. 3) Toplam sonunda bir elde olu şmu şsa sonuç pozitiftir; a) İşlem 15. Tümleyen (komplementer) yardımı ile yapılıyorsa olu şan elde en sa ğdaki basamak ile toplanarak gerçek sonuca ula şılır. b) İşlem 16. Tümleyen (komplementer) yardımı ile yapılıyorsa olu şan bu elde dikkate alınmaz. (C51) 16 Sayının F F F 15.Komplementeri - C 5 1 (3 A E) 16 (1B3) 16 Sayının F F F E 4 C 15.Komplementeri - 1 B 3 + 1 (E 4 C) 16 (E 4 D) 16 SAYISAL ELEKTRONIK 36 4- Toplam sonunda bir elde olu şmamı şsa sonuç negatiftir; a) İşlem 15. Tümleyen (komplementer) yardımı ile yapılıyorsa gerçek sonuç toplam sonucunun 15. Tümleyen (komplementer)idir. b) İşlem 16. Tümleyen (komplementer) yardımı ile yapılıyorsa gerçek sonuç toplam sonucunun 16. Tümleyen (komplementer)dir. Örnek: A şa ğıda verilen Hexadecimal (0naltılık) sayıları tümleyen(komplementer) yardımıyla çıkarın. Çözüm: Bu i şlem için öncelikle hangi tümleyen (komplementeri) kullanaca ğımıza karar vermeliyiz.Bu i şlem için 15. tümleyen (komplementeri) kullanalım Bir sonraki i şlem olarak ana sayı ile çıkan sayının 15. tümleyeni (komplementer) ile toplayalım. Olu şan bu elde sonucu pozitif oldu ğunu gösterir.15. tümleyen (komplementer) kullandı ğımızdan gerçek sonuç toplam sonucuna bu eldenin eklenmesi ile bulunur. Elde toplam sonucuna eklenir (784) 16 - (62A) 16 ( ) 16 (62A) 16 Sayının F F F 15.Komplementeri - 6 2 A (9 D 5) 16 784 İşlemin 1. Haneler 5+4=9 + 9D5 yapılı şı 2. Haneler 8+D=5 Elde 1 11 59 3. Haneler 1+7+9=1 Elde 1 159 + 1 (15A) 16 SAYISAL ELEKTRONIK 37 2.6.KODLAR VE KODLAMA Sayısal sistemler için olu şturulmu ş birçok farklı kod vardır ve her biri tasarlanmı ş oldukları i şler için en ideal çözümleri sunmaktadırlar. Temel olarak kodlama iki küme arasında kar şılı ğı tanımlanmı ş temel kurallar dizini olarak tanımlanır. Sayısal sistemlerin ikili mantık seviyesi ile tanımlanmaları sayısal tasarımcıların Binary sayı sistemini ve aritmeti ğini bilmelerini zorunlu hale getirmi ştir. Ancak her uygulama için Binary Sayılarla çalı şmak fazla basamak sayısı, uzun i şlemler ve yüksek hata olasılı ğını ortaya çıkarmı ştır. Bu nedenle kodlar sayısal tasarımcılara daha kolay ve kullanı şlı çözümler sunmaktadırlar. Kodlar kendi arasında sayısal ve alfanümerik olmak üzere iki temel türde incelenebilir. 2.6.1SAYISAL KODLAR Yalnızca Sayısal karakterler için tanımlı olan kodlara sayısal kodlar adı verilebilir.Temel sayısal kodlar a şa ğıda anlatılmaktadır. 2.6.1.1.BCD KODU (B İNARY CODED DEC İMAL CODE) BCD kodlamada Decimal( Onlu ) sayı sistemindeki her bir basamak kodlamadaki basamak ağırlı ğı yardımı ile dört bitlik karşılıkları yazılarak bulunur. A şa ğıda en çok kullanılan BCD kodları anlatılmı ştır. 2.6.1.1.A 8421 BCD KODU Adından anla şılabilece ği gibi bu kodlamada en yüksek basamak a ğırlı ğı (2 3 ) 8, üçüncü basamak (2 2 ) 4, ikinci basamak (2 1 ) 2 ve en dü şük basamak a ğırlı ğı (2 0 ) 1 olarak belirlenmi ştir. Buna göre her bir Decimal Sayının dört bitlik kar şılı ğı yazılarak kodlama tamamlanır. A şa ğıdaki Tablo 2.6’da Decimal rakamların 8-4-2-1 BCD Kod kar şılı ğı verilmi ştir. SAYISAL ELEKTRONIK 38 Tablo 2.6 Örnek: A şa ğıda verilen Decimal sayının 8421 BCD kod kar şılı ğını bulun (19) 10 = ( ) 8421 Dönü ştürme i şlemi her bir Decimal rakamın dört bitlik 8421 BCD kar şılı ğı yazılarak bulunur; 1 9 (19) 10 = (00011001) 8421 0001 1001 Örnek: A şa ğıda verilen Decimal sayıların 8421 BCD kod kar şılıklarını bulunuz. a- (23,4) 10 = ( ) 8421 b- (79) 10 = ( ) 8421 c- (158) 10 = ( ) 8421 d-(6231) 10 =( ) 8421 2.6.1.1.B 84-2-1 BCD KODU Bu kodlama temelinde 8421 BCD koduna benzemekle beraber basamak a ğırlıklarının bir bölümün negatiftir. En yüksek basamak a ğırlı ğı (2 3 ) 8, üçüncü basamak (2 2 ) 4, ikinci basamak (-2 1 ) -2 ve en dü şük basamak a ğırlı ğı (-2 0 ) -1 olarak belirlenmi ştir. Buna göre her bir Decimal Sayının dört bitlik kar şılı ğı yazılarak kodlama tamamlanır. Decimal 8421 0 0000 1 0001 2 0010 3 0011 4 0100 5 0101 6 0110 7 0111 8 1000 9 1001 SAYISAL ELEKTRONIK 39 A şa ğıdaki tabloda Decimal rakamların 84-2-1 BCD Kod kar şılı ğı verilmi ştir. Decimal 84-2-1 0 0000 1 0111 2 0110 3 0101 4 0100 5 1011 6 1010 7 1001 8 1000 9 1111 Tablo 2.7 Örnek: A şa ğıda verilen Decimal sayının 84-2-1 BCD kod kar şılı ğını bulun (275) 10 = ( ) 84-2-1 Çözüm: Dönü ştürme i şlemi her bir Decimal rakamın dört bitlik 84-2-1 BCD kar şılı ğı yazılarak bulunur; 2 7 5 0110 1001 1011 (275) 10 = (011010011011) 84-2-1 Örnek: A şa ğıda verilen Decimal sayıların 84-2-1 BCD kod kar şılıklarını bulunuz. a- (19,7) 10 = ( ) 84-2-1 b- (57) 10 = ( ) 84-2-1 c- (618) 10 = ( ) 84-2-1 d-(4239) 10 =( ) 84-2-1 SAYISAL ELEKTRONIK 40 2.6.1.1.B 2421 BCD KODU Bu kodlamada basamak a ğırlıkları en yüksek basamak a ğırlı ğı (2 1 ) 2, üçüncü basamak (2 2 ) 4, ikinci basamak (2 1 ) 2 ve en dü şük basamak a ğırlı ğı (2 0 ) 1 olarak belirlenmiştir. Decimal Sayının bu basamak a ğırlıklarına göre dört bitlik kar şılı ğı yazılarak kodlama tamamlanır. A şa ğıda Tablo 2.8’de Decimal rakamların 2421 BCD Kod kar şılı ğı verilmi ştir. Decimal 2421 0 0000 1 0001 2 0010 3 0011 4 0100 5 1011 6 1100 7 1101 8 1110 9 1111 Tablo 2.8 Örnek: A şa ğıda verilen Decimal sayının 2421 BCD kod kar şılı ğını bulun (49) 10 = ( ) 2421 Dönü ştürme i şlemi her bir Decimal rakamın dört bitlik 2421 BCD kar şılı ğı yazılarak bulunur; 4 9 0100 1111 (49) 10 = (01001111) 2421 Örnek: A şa ğıda verilen Decimal sayıların 8421 BCD kod kar şılıklarını bulunuz. a- (15) 10 = ( ) 2421 b- (43) 10 = ( ) 2421 c- (918) 10 = ( ) 2421 d-(7319) 10 =( ) 2421 SAYISAL ELEKTRONIK 41 2.6.1.2.ARTIK-3 (EXCESS-3) KODU Decimal sayıların 8421 BCD kod kar şılıklarına 3(0011) eklenerek elde edilir. Bu kodlama bazı aritmetik i şlemlerde kolaylık sa ğlamasına ra ğmen tümleyen almadaki güçlükleri kullanımda azalamaya yol açmı ştır.A şa ğıda Tablo 2.9’da Decimal rakamların Artık-3 kod kar şılıkları verilmi ştir. Decimal 8421 Xs-3 0 0000 0011 1 0001 0100 2 0010 0101 3 0011 0110 4 0100 0111 5 0101 1000 6 0110 1001 7 0111 1010 8 1000 1011 9 1001 1100 Tablo 2.9 Örnek: A şa ğıdaki Decimal sayıları Artık-3 koduna dönü ştürün. a-(5) 10 = ( ) Xs-3 5 0101 + 3 + 0011 8 0100 ( 5 ) 10 = (0100) Xs-3 Örnek: A şa ğıda verilen Decimal sayıların Artık-3 kod kar şılıklarını bulunuz. a- (11,4) 10 = ( ) Xs-3 b- (36) 10 = ( ) Xs-3 c- (721) 10 = ( ) Xs-3 d-(3315) 10 =( ) Xs-3 SAYISAL ELEKTRONIK 42 2.6.1.3.GRAY KODU Yansımalı kodlar adıyla anılan Gray kodunda sayılar arasındaki geçi şte sadece bir bit de ği şir. Bu kodlamanın basamak a ğırlı ğı olmadı ğından aritmetik i şlemlerde kullanılması mümkün de ğildir. Ancak hatayı azaltı ğından özellikle Analog-Sayısal dönü ştürücülerde, bilgisayar kontrollü cihazlarda oldukça tercih edilen bir kodlamadır. 2.6.1.3.1 B İNARY( İK İL İK) SAYILARIN GRAY KODUNA DÖNÜ ŞTÜRÜLMES İ Binay( İkilik) sayıları Gray Koduna dönü ştürürken; a) En yüksek de ğerlikli (MSB) bit a şa ğı indirilir . b) Her bit solundaki bitle elde dikkate alınmaksızın toplanır. c) Bu i şlem en dü şük de ğerlikli (LSB) bite kadar devam eder. d) Elde edilen sayı, Binary sayının Gray kod kar şılı ğıdır. Not Decimal Sayıların Gray koduna dönü ştürülmesi istenirse Decimal Sayının öncelikle Binary kar şılı ğı bulunur. Örnek: A şa ğıdaki Decimal sayıları Gray koduna dönü ştürün. Çözüm: (45) 10 = ( ) GRAY sayısının Binary kar şılı ğı (45) 10 = (101101) 2 olacaktır. I.Adım En yüksek de ğerlikli bit MSB Gray Kodunun 1. basama ğını olu şturur. 1 0 1 1 0 1 Binary 1 G r a y II.Adım En yüksek de ğerlikli bit sa ğındaki bitle elde dikkate alınmaksızın toplanır 1 + 0 1 1 0 1 Binary 1 1 Gray SAYISAL ELEKTRONIK 43 III. Adım toplama i şlemi bir sonraki bitler için devam eder 1 0 + 1 1 0 1 Binary 1 1 1 Gray IV. Adım toplama i şlemi bir sonraki bitler için devam eder 1 0 1 + 1 0 1 Binary 1 1 1 0 Gray V. Adım toplama i şlemi bir sonraki bitler için devam eder 1 0 1 1 + 0 1 Binary 1 1 1 0 1 Gray VI. Adım toplama i şlemi en dü şük de ğerlikli bite kadar devam eder 1 0 1 1 0 + 1 Binary 1 1 1 0 1 1 Gray Dönü şüm i şlemi tamamlanmı ş oldu ( 4 5 ) 10 = (111011) GRAY Örnek: A şa ğıdaki sayıların Gray kar şılıklarını bulunuz a- (31) 10 = ( ) GRAY b- (456) 10 = ( ) GRAY c- (1001011) 2 = ( ) GRAY SAYISAL ELEKTRONIK 44 2.6.1.3.2 GRAY KODLU SAYILARIN B İNAY( İK İL İK) SAYILARA DÖNÜŞTÜRÜLMES İ Gray Kodlu Sayıları Binay(İkilik) Sayılara dönü ştürürken; a) En soldaki bit bir sonraki basamaktaki sayı elde dikkate alınmaksızın toplanır. b) Toplam sonucu ile bir sonraki basamaktaki sayı elde dikkate alınmaksızın toplanır. c) Bu i şleme en sa ğdaki basama ğa kadar devam edilir. Örnek: A şa ğıdaki Decimal sayıları Gray koduna dönü ştürün. a-(11011) GRAY = ( ) 10 I.Adım En soldaki basamak Binary sayının en yüksek de ğerlikli bitini ( MSB) olu şturur. 1 1 0 1 1 Gray 1 Binary II.Adım En soldaki basamak bir sonraki bitle elde dikkate alınmaksızın toplanır 1 1 0 1 1 Gray + 1 0 Binary III.Adım Toplam sonucu bir sonraki bitle elde dikkate alınmaksızın toplanır 1 1 0 1 1 Gray + 1 0 0 Binary IV.Adım Toplam sonucu bir sonraki bitle elde dikkate alınmaksızın toplanır 1 1 0 1 1 Gray + 1 0 0 1 Binary SAYISAL ELEKTRONIK 45 IV.Adım İşlem en son basama ğa kadar devam eder. 1 1 0 1 1 Gray + 1 0 0 1 0 Binary (11011) GRAY = (10010 ) 2 (11011) GRAY = (18) 10 Örnek: A şa ğıdaki Gray kodlu sayıların kar şılıklarını bulunuz a- (1101) GRAY = ( ) 2 b- (1110110) GRAY = ( ) 10 c- (101011011) GRAY = ( ) 10 A şa ğıda Tablo 2.10 ‘da Decimal rakamların Gray Kod kar şılı ğı verilmi ştir Decimal Binary Gray 0 0000 0000 1 0001 0001 2 0010 0011 3 0011 0010 4 0100 0110 5 0101 0111 6 0110 0101 7 0111 0100 8 1000 1100 9 1001 1101 Tablo 2.10 2.6.1.4.Parity Kodu (Hata Tesbit Kodu) Sayısal sistemler birbirleri ile haberle şirken bilginin de ği şmesi oldukça sıklıkla kar şıla şılan bir konudur. Bilgi de ği şimlerini kontrol edebilmek ve gönderilen bilginin do ğrulu ğunu kontrol etmek amacı ile Parity Kodu (Hata Tesbit ) kodları ortaya çıkmı ştır. SAYISAL ELEKTRONIK 46 Veriye özel bir bit ekleme yöntemi ile veri tümle ştirme sa ğlanabilir. Fazladan eklenen e şlik biti (parity bit)i verilen kod kelimesindeki hatanın bulunmasını sa ğlayacaktır. Basit bir e şlik bitinin kodlanması tek yada çift taban üzerine yapılır. Tek e şlik bitinde veri içindeki 1’ lerin sayısı tek, çift e şlik bitinde ise 1’lerin sayısı çifttir. Tablo 2.11 Not: Tek e şlik biti ile çift e şlik bitinin birbirinin tümleyeni oldu ğu tablodan görülmelidir. 2.6.2.ALFANÜMERİK KODLAR Alfanümerik kodlar; sayılar, harfler, noktalama i şaretleri ve kontrol karekterlerinin tanımlanabildi ği kodlardır. Yaygın olarak kullanılan iki tür alfanümerik kodlama türü vardır. Bunlar ASCII (American Standart Code for Information Interchange - Bilgi alı ş verisi için standart Amerikan Kodu) ve EBCDIC (Extended Binary Coded Decimal Intechange Code – Geni şletilmi ş ikilik kodlu onluk alı şveri ş kodu) olarak sayılabilir. Decimal Sayı Gönderilecek Bilgi Tek E şlik Biti Çift E şlik Biti 0 0000 1 0 1 0001 0 1 2 0010 0 1 3 0011 1 0 4 0100 0 1 5 0101 1 0 6 0110 1 0 7 0111 0 1 8 1000 0 1 9 1001 1 0 10 1010 0 1 11 1011 0 1 12 1100 1 0 13 1101 0 1 14 1110 0 1 15 1111 1 0 SAYISAL ELEKTRONIK 47 2.6.2.1.ASCII (AMER İCAN STANDART CODE FOR INFORMAT İON INTERCHANGE) ASCII kodu 7 bitlik bir koddur. Bütün büyük ve küçük harfler, rakamlar, noktalama i şaretleri ve kontrol karakterleri bu kodlamada tanımlanmı ştır. Sadece büyük harfler rakamlar ve bazı kontrol karakterleri kullanılmak istenirse ilk altı bitin yeterli olması amacıyla kod özel olarak düzenlenmi ştir. Bazı durumlarda hata kontrolü amacıyla 7- bitlik kodun en yüksek de ğerlikli (MSB) bitine bir e şlik biti (parity biti) eklenir. Örne ğin tek e şlik biti ile iletilecek A harfinin ASCII kod kar şılı ğı 11000001’ dir. A şa ğıdaki tabloda ASCII kod kar şılıkları verilmi ştir; MSB LSB 000 0 001 1 010 2 011 3 100 4 101 5 110 6 111 7 0000 0 NUL DLE SP 0 @ P ‘ p 0001 1 SOH DC 1 ! 1 A Q a q 0010 2 STX DC 2 " 2 B R b r 0011 3 ETX DC 3 # 3 C S c s 0100 4 EOT DC 4 $ 4 D T d t 0101 5 ENQ NAK % 5 E U e u 0110 6 ACK SYN & 6 F V f v 0111 7 BEL ETB ’ 7 G W g w 1000 8 BS CAN ( 8 H X h x 1001 9 HT EM ) 9 I Y i y 1010 A LF SUB * : J Z j z 1011 B VT ESC + ; K [ k { 1100 C FF FS , < L \ l | 1101 D CR GS - = M ] m } 1110 E S0 RS · > N ^ n ~ 1111 F S1 US / ? O _ o DEL Tablo 2.12 ASCII kodlu bir mesajın anlamını bulmak için ; gönderilen 7-bitlik mesajın yüksek de ğerlikli ilk 3-biti için tablodan MSB ile gösterilen en yüksek de ğerlikli sütün bulunur.Daha sonra kalan 4-bit için LSB ile gösterilen satır bulunur. Bu satır ve sütün bile şimine ait tablodaki de ğer mesajın ASCII kod kar şılı ğıdır. Örnek: A şa ğıda Binary ( İkilik) formda gönderilen ASCII kodlanmı ş mesajın kar şılı ğını bulunuz 1010011 1000101 1001100 1000001 1001101 SAYISAL ELEKTRONIK 48 Çözüm: Tablodan herbir 7-bitlik bilginin kar şılı ğı bulunarak mesajın kar şılı ğı bulunur. 1010011 1000101 1001100 1000001 1001101 53 16 43 16 4C 16 41 16 4D 16 S E L A M Örnek: A şa ğıda Basic dilinde yazılmı ş programın bir satırı verilmi ştir. Bilgisayar belle ğinde bu programın ASCII kod kar şılı ğı yazıldı ğına göre bu yerle şimi yazınız. 30 PR İNT " A = " ;Y Çözüm: Tablodan bütün karekterlerin ASCII kod kar şılı ğı bulunarak bellek yerle şimi yazılır Karekter ASCII Hexadecimal 3 0110011 33 16 0 0110000 30 16 Bo şluk 0100000 20 16 P 1010000 50 16 R 1010010 52 16 I 1001001 49 16 N 1001110 4E 16 T 1010100 54 16 Bo şluk 0100000 20 16 " 0100010 22 16 A 1000001 41 16 = 0111101 3D 16 " 0100010 22 16 ; 0111011 3B 16 Y 1011001 59 16 A şa ğıda ASCII kodlamada kullanılan kontrol karakter sembollerinin anlamları verilmektedir. NUL BO ŞLUK S1 DE ĞİŞİKLİĞE G İR SOH BA ŞLI ĞIN BA ŞI DLE VER İ BA ĞI KAÇMA STX YAZIYA BA ŞLA DC 1-4 DO ĞRUDAN KONTROL ETX YAZIYI B İT İR NAK NEGAT İF ALINDI EOT İLET İM SONU SYN SENKRON BO ŞTA ENQ SORU ŞTURMA ETB İLET İM BLOĞU SONU SAYISAL ELEKTRONIK 49 ACK ALINDI CAN İPTAL BEL Z İL EM ORTAM SONU BS B İR KAREKTER GER İ SUB DEĞİŞT İR HT YATAY TAB ESC KAÇMA LF SATIR BESLEME FS SAYFA AYIRICI VT DÜŞEY TAB GS GRUP AYIRICI FF SAYFA BESLEME RS KAYIT AYIRICI CR SATIRBA ŞI US BR İM AYIRICI S0 DEĞİŞİKLİĞİ ÇIKAR DEL SA ĞDAK İ KAREKTER İ S İL 2.6.2.2. EBCDIC (EXTENDED B İNARY CODED DEC İMAL INTECHANGE CODE) IBM cihazlarında sıklıkla kar şıla şılan bir di ğer alfanümerik kod Geni şletilmi ş İkilik- Kodlu Onluk alı şveri ş kodudur (EBCDIC Extended Binary Coded Decimal Intechange Code). E şlik biti olayan 8-bitlik bu koda hata tesbiti amacıyla 9. bir bit eklenebilir. A şa ğıdaki tablo ’da EBCDIC kod kar şılıkları verilmi ştir. Karakter Hexadecimal Binary Karakter Hexadecimal Binary NUL 00 00000000 & 50 01010000 SOH 01 00000001 ’ 7D 01111101 STX 02 00000010 ( 4D 01001101 ETX 03 00000011 ) 5D 01011101 EOT 37 00110111 * 5C 01011100 ENQ 2D 00101101 + 4E 01001110 ACK 2E 00101110 , 6B 01101011 BEL 2F 00101111 - 60 01100000 BS 16 00010110 · 4B 01001011 HT 05 00000101 / 61 01100001 LF 25 00100101 0 F0 11110000 VT 0B 00001011 1 F1 11110001 FF 0C 00001100 2 F2 11110010 CR 0D 00001101 3 F3 11110011 S0 0E 00001110 4 F4 11110100 S1 0F 00001111 5 F5 11110101 DLE 10 00010000 6 F6 11110110 DC 1 11 00010001 7 F7 11110111 DC 2 12 00010010 8 F8 11111000 DC 3 13 00010011 9 F9 11111001 DC 4 35 00110101 : 7A 01111010 NAK 3D 00111101 ; 5E 01011110 SYN 32 00110010 < 4C 01001100 EOB 26 00100110 W E6 1110110 SAYISAL ELEKTRONIK 50 CAN 18 00011000 X E7 11100111 EM 19 00011001 Y E8 11101000 SUB 3F 00111111 Z E9 11101001 BYP 24 00100100 [ AD 10101101 FLS 1C 00011100 NL 15 00010101 GS 1D 00011101 ] DD 11011101 RDS 1E 00011110 ¬ 5F 01011111 US 1F 00011111 _ 6D 01101101 SP 40 01000000 RES 14 00010100 ! 5A 01011010 a 81 10000001 " 7F 01111111 b 82 10000010 # 7B 01111011 c 83 10000011 $ 5B 01011011 d 84 10000100 % 6C 01101100 e 85 10000101 Karakter Hexadecimal Binary Karekter Hexadecimal Binary = 7E 01111110 f 86 10000110 > 6E 01011110 g 87 10000111 ? 6F 01011111 h 88 10001000 @ 7C 01111100 i 89 10001001 A C1 11000001 j 91 10010001 B C2 11000010 k 92 10010010 C C3 11000011 l 93 10010011 D C4 11000100 m 94 10010100 E C5 11000101 n 95 10010101 F C6 11000110 o 96 10010110 G C7 11000111 p 97 10010111 H C8 11001000 q 98 10011000 I C9 11001001 r 99 10011001 J D1 11010001 s A2 10100010 K D2 11010010 t A3 10100011 L D3 11010011 u A4 10100100 M D4 11010100 v A5 10100101 N D5 11010101 w A6 10100110 O D6 11010110 x A7 10100111 P D7 11010111 y A8 10101000 Q D8 11011000 z A9 10101001 R D9 11011001 { 8B 10111011 S E2 11100010 | 4F 01001111 T E3 11100011 } 9B 10011011 U E4 11100100 ¢ 4A 01001010 V E5 11100101 DEL 07 00000111 SAYISAL ELEKTRONIK 51 Örnek: A şa ğıda Binary ( İkilik) formda gönderilen EBCDIC kodlanmı ş mesajın kar şılı ğını bulunuz 11001000 11000101 11010011 11010111 Çözüm: Tablodan her 8-bitlik bilginin kar şılı ğı bulunarak mesajın anlamı bulunur. 11001000 11000101 11010011 11010111 C8 16 C5 16 D3 16 D7 16 H E L P SAYISAL ELEKTRONIK