• 10'dan 16'ya online sistem. İkili sekizli onaltılık sayı sistemi

    1. Çeşitli sayı sistemlerinde sıralı sayma.

    İÇİNDE modern hayat konumsal sayı sistemlerini, yani bir rakamla gösterilen sayının, sayı gösterimindeki rakamın konumuna bağlı olduğu sistemleri kullanırız. Bu nedenle, gelecekte "konumsal" terimini atlayarak sadece onlar hakkında konuşacağız.

    Sayıların bir sistemden diğerine nasıl çevrileceğini öğrenmek için, örnek olarak ondalık sistemi kullanarak sayıların sıralı kaydının nasıl gerçekleştiğini anlayalım.

    Ondalık sayı sistemimiz olduğu için sayıları oluşturmak için 10 karakterimiz (rakam) var. Sıra sayımına başlıyoruz: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. Sayılar bitti. Sayının kapasitesini artırıyoruz ve alt sırayı sıfırlıyoruz: 10. Ardından tüm rakamlar bitene kadar alt sırayı tekrar artırın: 11, 12, 13, 14, 15, 16, 17, 18, 19. Yüksek sırayı artırın 1 ile alt sırayı sıfırlıyoruz: 20. Her iki basamak için de tüm basamakları kullandığımızda (99 sayısını elde ediyoruz), yine sayının basamak kapasitesini artırıyoruz ve mevcut basamakları sıfırlıyoruz: 100. Ve böyle devam ediyor.

    Aynısını 2., 3. ve 5. sistemlerde yapmaya çalışalım (2. sistem, 3. sistem vb. için notasyonu tanıtalım):

    0 0 0 0
    1 1 1 1
    2 10 2 2
    3 11 10 3
    4 100 11 4
    5 101 12 10
    6 110 20 11
    7 111 21 12
    8 1000 22 13
    9 1001 100 14
    10 1010 101 20
    11 1011 102 21
    12 1100 110 22
    13 1101 111 23
    14 1110 112 24
    15 1111 120 30

    Sayı sisteminin 10'dan büyük bir tabanı varsa, ek karakterler girmemiz gerekecek, Latin alfabesinin harflerini girmek gelenekseldir. Örneğin, onaltılık sistem için on basamağa ek olarak iki harfe ( ve ) ihtiyacımız var:

    0 0
    1 1
    2 2
    3 3
    4 4
    5 5
    6 6
    7 7
    8 8
    9 9
    10
    11
    12 10
    13 11
    14 12
    15 13

    2.Ondalık sayı sisteminden başka bir sayı sistemine aktarma.

    Tam bir pozitif ondalık sayıyı farklı bir tabana sahip bir sayı sistemine dönüştürmek için bu sayıyı tabana bölmeniz gerekir. Ortaya çıkan bölüm tekrar tabana bölünür ve bölüm tabandan küçük olana kadar devam eder. Sonuç olarak, son bölümü ve tüm kalanları sondan başlayarak bir satıra yazın.

    örnek 1 Ondalık sayı 46'yı şuna dönüştür: İkili sistem hesaplaşma

    Örnek 2 672 ondalık sayıyı şuna dönüştür: sekizli sistem hesaplaşma

    Örnek 3 934 ondalık sayısını onaltılık sayı sistemine çevirelim.

    3. Herhangi bir sayı sisteminden ondalık sayıya çeviri.

    Herhangi bir başka sistemdeki sayıları ondalık sayıya nasıl çevireceğimizi öğrenmek için, bize tanıdık gelen ondalık gösterimi inceleyelim.
    Örneğin, 325 ondalık sayısı 5 birim, 2 onluk ve 3 yüzdür, yani.

    Diğer sayı sistemlerinde durum tamamen aynıdır, sadece 10, 100 vb. ile değil, sayı sisteminin tabanının derecesi ile çarpacağız. Örneğin üçlü sayı sisteminde 1201 sayısını ele alalım. Rakamları sağdan sola sıfırdan başlayarak numaralandırıyoruz ve sayımızı bir rakamın derecesinde bir rakamın üç katı ile çarpımlarının toplamı olarak gösteriyoruz:

    Bu, numaramızın ondalık gösterimidir, yani.

    Örnek 4çevirelim ondalık sistem hesap sekizli sayı 511.

    Örnek 5 1151 onaltılı sayıyı ondalık sayı sistemine çevirelim.

    4. İkili bir sistemden "ikinin gücü" tabanlı (4, 8, 16, vb.) bir sisteme aktarım.

    Bir ikili sayıyı "ikinin kuvveti" tabanlı bir sayıya dönüştürmek için, ikili diziyi sağdan sola dereceye eşit basamak sayısına göre gruplara bölmek ve her grubu karşılık gelen basamakla değiştirmek gerekir. yeni sistem hesaplaşma

    Örneğin 1100001111010110 ikili sayısını sekizliye çevirelim. Bunu yapmak için, sağdan başlayarak (çünkü ) 3 karakterlik gruplara ayıralım ve ardından karşılık gelen tabloyu kullanalım ve her grubu yeni bir sayı ile değiştirelim:

    Paragraf 1'de bir yazışma tablosunun nasıl oluşturulacağını öğrendik.

    0 0
    1 1
    10 2
    11 3
    100 4
    101 5
    110 6
    111 7

    Onlar.

    Örnek 6 1100001111010110 ikili sayısını onaltılık sisteme çevirelim.

    0 0
    1 1
    10 2
    11 3
    100 4
    101 5
    110 6
    111 7
    1000 8
    1001 9
    1010 A
    1011 B
    1100 C
    1101 D
    1110 E
    1111 F

    5. Tabanı "ikinin kuvveti" (4, 8, 16, vb.) olan bir sistemden ikiliye aktarım.

    Bu çeviri, bir öncekine benzer. ters taraf: arama tablosundaki ikili sistemdeki her basamağı bir basamak grubuyla değiştiririz.

    Örnek 7 Onaltılı sayı C3A6'yı ikili sayı sistemine çevirelim.

    Bunu yapmak için, sayının her basamağını yazışma tablosundan 4 basamaklı bir grupla değiştireceğiz (çünkü ), gerekirse grubu başlangıçta sıfırlarla tamamlayacağız:



    Onaltılık sayı sistemi(Ayrıca - onaltılık kod) dır-dir pozisyon sistemi 16 tamsayı tabanına göre hesaplama. Literatürde bazen onaltılık terimi de kullanılır (“onaltılık” olarak telaffuz edilir, İngilizce onaltılı sayının kısaltmasıdır). Bu sayı sisteminin sayıları, yaygın olarak kullanılan 0-9 Arap rakamları ve A-F Latin alfabesinin ilk karakterleridir. Harfler aşağıdaki ondalık değerlere karşılık gelir:

    • * A-10;
    • *B-11;
    • *C-12;
    • *D-13;
    • * E - 14;
    • * K - 15.

    Böylece on Arap rakamı, altı Latin harfiyle birlikte sistemin on altı basamağını oluşturur.

    Bu arada, sitemizde herhangi bir metni ondalık, onaltılık, ikili kodÇevrimiçi Kod Hesaplayıcıyı kullanarak.

    Başvuru. Onaltılık kod düşük seviyeli programlamada ve çeşitli bilgisayar referans belgelerinde yaygın olarak kullanılır. Sistemin popülaritesi mimari çözümlerle doğrulanmaktadır. modern bilgisayarlar: minimum bilgi birimi olarak bir bayta (sekiz bitten oluşan) sahiptirler - ve bir baytın değerini iki onaltılık basamak kullanarak yazmak uygundur. Bir bayt değeri #00 ile #FF arasında değişebilir (ondalık gösterimde 0 ila 255) - başka bir deyişle, onaltılık kod, kayıtta kullanılmayan "fazladan" basamak yokken baytın herhangi bir durumunu yazabilirsiniz.

    kodlanmış Unicode karakter sayısını temsil etmek için dört onaltılık basamak kullanılır. RGB (Kırmızı, Yeşil, Mavi) renk gösterimi de genellikle onaltılık bir kod kullanır (örneğin, #FF0000 parlak kırmızı bir gösterimdir).

    Onaltılık kod yazmanın bir yolu.

    Matematiksel yazma yöntemi. Matematiksel gösterimde, sistemin tabanı, sayının sağında bir alt simge olarak ondalık biçimde yazılır. Ondalık gösterim 3032 sayısı 3032 10 olarak yazılabilir, hexadecimalde bu sayı BD8 16 olarak yazılacaktır.

    Programlama dillerinin söz diziminde. Sözdizimi çeşitli diller programlama, kullanarak sayı biçimini farklı şekilde ayarlar onaltılık kod:

    * Assembly dilinin bazı çeşitlerinin sözdiziminde, sayının sağına yerleştirilen Latince "h" harfi kullanılır, örneğin: 20Dh. Sayı bir Latin harfiyle başlıyorsa, önünde sıfır bulunur, örneğin: 0A0Bh. Bu, değerleri kullanarak sabitlerden ayırt etmek için yapılır. onaltılık kod;

    * Diğer çevirici çeşitleri, Pascal (ve Delphi gibi çeşitleri) ve bazı Temel lehçeler "$" ön ekini kullanır: $A15;

    * dilde HTML işaretlemesi, ayrıca kademeli olarak css dosyaları, içindeki rengi belirtmek için RGB formatı onaltılık gösterimde "#" öneki kullanılır: #00DC00.

    Onaltılık bir kod başka bir sisteme nasıl çevrilir?

    Onaltılıktan ondalığa dönüştürün. Onaltılık bir sistemden ondalık bir sisteme dönüştürme işlemi gerçekleştirmek için, orijinal sayının basamak cinsinden basamakların çarpımlarının toplamı olarak sunulması gerekir. onaltılık sayı vakıf derecesine kadar.

    İkili SS

    onaltılık ss

    Örneğin, A14 onaltılık sayısını çevirmeniz gerekir: üç hanelidir. Kuralı kullanarak, tabanı 16 olan kuvvetlerin toplamı olarak yazarız:

    A14 16 = 10,16 2 + 1,16 1 + 4,16 0 = 10,256 + 1,16 + 4,1 = 2560 + 16 + 4 = 2580 10

    Sayıları ikiliden onaltılıya ve tersi dönüştürme.

    Çeviri için bir not defteri tablosu kullanılır. Bir sayıyı ikiliden ondalık sayıya dönüştürmek için, onu sağdan sola doğru ayrı dörtlülere bölmek ve ardından tabloyu kullanarak her dörtlüyü karşılık gelen onaltılık basamakla değiştirmek gerekir. Bu durumda, basamak sayısı dördün katı değilse, o zaman karşılık gelen sıfır sayısını sayının sağına eklemek gerekir, böylece toplam sayı ikili basamaklar dördün katı oldu.

    Çeviri için defter tablosu.

    Onaltılıdan ikiliye dönüştürmek için ters işlemi gerçekleştirmelisiniz: her basamağı tablodaki bir dörtlü ile değiştirin.

    İkili SS

    sekizli SS

    Örnek onaltılıdan ikiliye dönüştürme: A5E 16 = 1010 0101 1110 = 101001011110 2

    Örnek ikiliden onaltılıya dönüştürme: 111100111 2 = 0001 1110 0111 = 1E7 16

    Bu örnekte, orijinal ikili sayıdaki basamak sayısı dört (9) değildi, bu nedenle toplam basamak sayısını 12'ye getirmek için sondaki sıfırlar eklendi.

    Otomatik çeviri. hızlı aktarım onaltılık sayı sisteminden üçten birine popüler sistemler(ikili, sekizli ve ondalık) ve ters çeviri kullanılarak yapılabilir. standart hesap makinesi Windows işletim sistemi ile sağlanır. Hesap makinesini açın, menüden Görünüm -> Programlayıcı'yı seçin. İÇİNDE bu mod kullanılan sayı sistemini ayarlayabilirsiniz. şu an(soldaki menüye bakın: Hex, Dec, Oct, Bin). Bu durumda mevcut sayı sistemini değiştirmek otomatik olarak çevirir.

    hizmet ataması. Hizmet, sayıları bir sayı sisteminden diğerine dönüştürmek için tasarlanmıştır. çevrimiçi mod. Bunu yapmak için, numarayı çevirmek istediğiniz sistemin tabanını seçin. Hem tamsayıları hem de sayıları virgülle girebilirsiniz.

    Sayı

    10 2 8 16 sayı sisteminden çeviri. 2 10 8 16 sayı sistemine dönüştür.
    Kesirli sayılar için 2 3 4 5 6 7 8 ondalık basamak kullanın.

    34 gibi tam sayılar veya 637.333 gibi kesirli sayılar girebilirsiniz. Kesirli sayılar için, ondalık noktadan sonraki çevirinin doğruluğu belirtilir.

    Aşağıdakiler de bu hesap makinesinde kullanılır:

    Sayıları temsil etmenin yolları

    İkili (ikili) sayılar - her basamak bir bitin (0 veya 1) değeri anlamına gelir, en önemli bit her zaman solda yazılır, "b" harfi sayıdan sonra gelir. Algı kolaylığı için defterler boşluklarla ayrılabilir. Örneğin, 1010 0101b.
    onaltılık (onaltılık) sayılar - her dörtlü bir karakter 0...9, A, B, ..., F ile temsil edilir. Böyle bir gösterim farklı şekillerde gösterilebilir, burada sondan sonra yalnızca "h" karakteri kullanılır onaltılık basamak. Örneğin, A5h. Program metinlerinde, programlama dilinin sözdizimine bağlı olarak aynı sayı hem 0xA5 hem de 0A5h olarak gösterilebilir. Sayılar ve sembolik adlar arasında ayrım yapmak için bir harfle temsil edilen en önemli onaltılık basamağın soluna önemsiz bir sıfır (0) eklenir.
    ondalıklar (ondalık) sayılar - her bayt (kelime, çift kelime) temsil edilir ortak sayı ve ondalık gösterimin işareti ("d" harfi) genellikle ihmal edilir. Önceki örneklerdeki baytın ondalık değeri 165'tir. İkili ve onaltılık gösterimin aksine, ondalık sayının her bir bitin değerini zihinsel olarak belirlemesi zordur, ki bu bazen yapılması gerekir.
    Sekizli (sekizlik) sayılar - her üçlü bit (ayrım en önemsizden başlar) 0-7 arasında bir sayı olarak yazılır, sonuna "o" işareti konur. Aynı sayı 245o olarak yazılırdı. Sekizli sistem, baytın eşit olarak bölünemeyeceği için elverişsizdir.

    Sayıları bir sayı sisteminden diğerine dönüştürmek için algoritma

    Bütün çeviri ondalık sayılar başka bir sayı sistemine geçiş, sayının yeni sayı sisteminin tabanından kalan sayı yeni sayı sisteminin tabanından daha az bir sayı bırakana kadar bölünmesiyle gerçekleştirilir. Yeni sayı sondan başlayarak bölme işleminde kalan olarak yazılır.
    Doğru ondalık kesrin başka bir PSS'ye dönüştürülmesi, sayının yalnızca kesirli kısmının, kesirli kısımda tüm sıfırlar kalana veya belirtilen çeviri doğruluğuna ulaşılana kadar yeni sayı sisteminin tabanı ile çarpılmasıyla gerçekleştirilir. Her çarpma işlemi sonucunda yeni sayının en büyükten başlayarak bir basamağı oluşturulur.
    Uygunsuz bir kesrin çevirisi 1. ve 2. kurallara göre yapılır. Tamsayı ve kesirli kısımlar virgülle ayrılarak birlikte yazılır.

    Örnek 1.



    2'den 8'e 16 sayı sistemine çeviri.
    Bu sistemler ikinin katlarıdır, bu nedenle çeviri karşılık gelen tablo kullanılarak gerçekleştirilir (aşağıya bakınız).

    Bir sayıyı ikili sayı sisteminden sekizli (onaltılık) bir sayıya dönüştürmek için, ikili sayıyı virgülden sağa ve sola doğru üç (onaltılık için dört) basamaklı gruplara bölmek ve aşırı grupları sıfırlarla tamamlamak gerekir. Eğer gerekliyse. Her grup karşılık gelen sekizli veya onaltılık basamakla değiştirilir.

    Örnek 2. 1010111010.1011 = 1.010.111.010.101.1 = 1272.51 8
    burada 001=1; 010=2; 111=7; 010=2; 101=5; 001=1

    Hexadecimal'e dönüştürürken, sayıyı aynı kurallara göre her biri dört basamaklı parçalara bölmeniz gerekir.
    Örnek 3. 1010111010.1011 = 10.1011.1010.1011 = 2B12.13 HEX
    burada 0010=2; 1011=B; 1010=12; 1011=13

    2, 8 ve 16'dan sayıların ondalık sisteme dönüştürülmesi, sayının ayrı ayrı parçalara bölünmesi ve buna karşılık gelen güce yükseltilen sistemin tabanı (sayının çevrildiği) ile çarpılmasıyla gerçekleştirilir. seri numarasıçevrilen numarada. Bu durumda sayılar virgülün solunda (ilk sayı 0'dır) artan, sağında azalan (yani eksi işaretli) olarak numaralandırılır. Elde edilen sonuçlar toplanır.

    Örnek 4.
    İkili sayı sisteminden ondalık sayı sistemine dönüştürme örneği.

    1010010.101 2 = 1 2 6 +0 2 5 +1 2 4 +0 2 3 +0 2 2 +1 2 1 +0 2 0 + 1 2 -1 +0 2 - 2 +1 2 -3 =
    = 64+0+16+0+0+2+0+0.5+0+0.125 = 82.625 10 Sekizliden ondalık sayı sistemine dönüştürme örneği. 108.5 8 = 1* 8 2 +0 8 1 +8 8 0 + 5 8 -1 = 64+0+8+0.625 = 72.625 10 Onaltılı sistemden onlu sayı sistemine dönüştürme örneği. 108,5 16 = 1 16 2 +0 16 1 +8 16 0 + 5 16 -1 = 256+0+8+0,3125 = 264,3125 10

    Bir sayı sisteminden başka bir PSS'ye sayıları çevirme algoritmasını bir kez daha tekrarlıyoruz.

    1. Ondalık sayı sisteminden:
      • sayıyı çevrilmekte olan sayı sisteminin tabanına bölün;
      • sayının tamsayı kısmını böldükten sonra kalanını bulun;
      • bölme işleminden kalanları ters sırayla yazın;
    2. ikili sistemden
      • Ondalık sayı sistemine dönüştürmek için, 2 tabanının çarpımlarının karşılık gelen deşarj derecesine göre toplamını bulmanız gerekir;
      • Bir sayıyı sekizliye dönüştürmek için, sayıyı üçlüye ayırmanız gerekir.
        Örneğin, 1000110 = 1000 110 = 106 8
      • Bir sayıyı ikiliden onaltılıya dönüştürmek için sayıyı 4 basamaklı gruplara ayırmanız gerekir.
        Örneğin, 1000110 = 100 0110 = 46 16
    Sistem konumsal olarak adlandırılır., bir basamağın önemi veya ağırlığı, sayıdaki konumuna bağlıdır. Sistemler arasındaki ilişki bir tablo ile ifade edilir.
    Sayı sistemlerinin yazışma tablosu:
    İkili SSOnaltılık SS
    0000 0
    0001 1
    0010 2
    0011 3
    0100 4
    0101 5
    0110 6
    0111 7
    1000 8
    1001 9
    1010 A
    1011 B
    1100 C
    1101 D
    1110 E
    1111 F

    Sekizli sayı sistemine dönüştürme tablosu

    Sayıların ikiliden onaltılık sayı sistemine dönüştürülmesinde herhangi bir zorluk ve yanlış anlaşılma var mı? Bilgisayar bilimi ve ICT'de bireysel dersler için kaydolun. Özel derslerimizde öğrencilerim ve ben sadece teorik kısmı analiz etmiyoruz, aynı zamanda çok sayıda farklı tematik alıştırma çözüyoruz.

    İkili veya ikili sayı sisteminin ne olduğunu bilmeniz gerekir.

    Bir sayıyı 2'den 16'ya nasıl çevireceğinizi düşünmeden önce, ikili sayı sisteminde hangi sayıların olduğunu iyi anlamanız gerekir. İkili sayı sisteminin alfabesinin kabul edilebilir iki unsurdan oluştuğunu hatırlatmama izin verin - 0 Ve 1 . Bu, kesinlikle ikili olarak yazılan herhangi bir sayının bir dizi sıfır ve birlerden oluşacağı anlamına gelir. İkili gösterimde yazılmış sayılara örnekler: 10010, 100, 111101010110, 1000001.

    Onaltılık sayı sisteminin ne olduğunu bilmeniz gerekir.

    İkili sistemi çözdük, temel noktaları hatırladık, şimdi onaltılık sistemden bahsedelim. Onaltılık sayı sisteminin alfabesi on altı farklı karakterden oluşur: 10 Arap rakamı (0'dan 9'a kadar) ve 6 ilk büyük harf Latin harfleri("A"dan "F"ye). Bu, kesinlikle onaltılık biçimde yazılan herhangi bir sayının yukarıdaki alfabenin karakterlerinden oluşacağı anlamına gelir. İşte onaltılık gösterimde yazılmış sayıların örnekleri:

    810AFCDF198303 100FFF0

    Bir sayıyı 2'den onaltılık sayı sistemine dönüştürmek için kullanılan algoritma hakkında konuşalım.

    ihtiyacımız olacak hatasız Tetrads kodlama tablosunu düşünün. Bu tablo kullanılmadan sayıları 2'den 16'ya hızlı bir şekilde çevirmek oldukça zor olacaktır.

    Tetrad kodlama tablosunun amacı, ikili sayı sistemi ve onaltılık sayı sisteminin karakterlerini benzersiz bir şekilde eşleştirmektir.

    Tetrad tablosu aşağıdaki yapıya sahiptir:

    dörtlü tablo

    0000 - 0

    0001 - 1

    0010 - 2

    0011 - 3

    0100 - 4

    0101 - 5

    0110 - 6

    0111 - 7

    1000 - 8

    1001 - 9

    1010 - A

    1011 - B

    1100 - C

    1101 - D

    1110 - E

    1111 - F

    101011111001010 2 sayısını hexadecimal sisteme çevirmemiz gerekiyor diyelim. Her şeyden önce, orijinaline ihtiyacınız var ikili kod dört haneli gruplara ayrılmalıdır ve bu çok önemlidir, bölme mutlaka sağdan sola başlamalıdır.

    101 . 0111 . 1100 . 1010

    Bölme işleminden sonra 4 grubumuz oldu: 101, 0111, 1100 ve 1010. En soldaki segment yani segment 101 özel dikkat gerektiriyor Gördüğünüz gibi uzunluğu 3 hane ve uzunluğunun eşit olması gerekiyor dörde, bu nedenle, bu segmenti baştaki sıfıra tamamlayacağız:

    101 -> 0 101.

    Söyler misiniz, sayının soluna neye dayanarak 0 ekleriz? Mesele şu ki, önemsiz sıfırlar eklemenin orijinal sayının değeri üzerinde herhangi bir etkisi yoktur. bu yüzden biz var tam sağ ikili sayının soluna yalnızca bir sıfır değil, prensipte herhangi bir sayıda sıfır ekleyin ve istenen uzunlukta bir sayı elde edin.

    Dönüşümün son aşamasında, ortaya çıkan ikili grupların her birini Tetrad kodlama tablosuna göre karşılık gelen değere çevirmek gerekir.

    0101 -> 5 0111 -> 7 1100 -> C 1010 -> A

    101011111001010 2 = 57CA 16

    Ve şimdi, ikili durumdan onaltılık duruma nasıl dönüştürüldüğünü gösteren multimedya çözümüne alışmanızı öneririm:

    Kısa sonuçlar

    Bu kısa yazıda " konusunu ele aldık. Sayı sistemleri: 2'den 16'ya nasıl çevrilir". Herhangi bir sorunuz, yanlış anlamanız varsa, arayın ve bilgisayar bilimi ve programlama alanındaki bireysel derslerime kaydolun. Size bu alıştırmalardan bir düzineden fazlasını çözmenizi önereceğim ve tek bir sorunuz kalmayacak. Genel olarak sayı sistemleri, ders boyunca kullanılan temeli oluşturan son derece önemli bir konudur.

    Sınavı geçmek ve sadece ...

    Bilgisayar bilimi derslerinde okullarda genellikle öğrencilere sayıları bir sistemden diğerine çevirmenin en karmaşık ve elverişsiz yolunu göstermeleri gariptir. Bu yöntem, orijinal sayıyı sırayla tabana bölmekten ve bölmenin geri kalanını ters sırada toplamaktan oluşur.

    Örneğin 810 10 sayısını ikili sisteme çevirmeniz gerekiyor:

    Sonuç aşağıdan yukarıya doğru ters sırada yazılır. 81010 = 11001010102 çıkıyor

    İkili sisteme dönüştürmeniz gerekirse, oldukça büyük sayılar, daha sonra bölme merdiveni çok katlı bir binanın büyüklüğünü alır. Ve tüm sıfırları nasıl toplayabilir ve tek bir tanesini kaçırmazsınız?

    İÇİNDE KULLANIM programı bilgisayar bilimi, sayıların bir sistemden diğerine çevrilmesiyle ilgili çeşitli görevleri içerir. Kural olarak, bu 8- ve 16-ary sistemleri ve ikili arasında bir dönüşümdür. Bunlar A1, B11 bölümleridir. Ancak, B7 bölümünde olduğu gibi diğer sayı sistemlerinde de sorunlar vardır.

    Başlangıç ​​olarak bilgisayar bilimini gelecekteki mesleği olarak seçenlerin ezbere bilmesinde fayda olacak iki tabloyu hatırlayalım.

    2 numaralı güç tablosu:

    2 1 2 2 2 3 2 4 2 5 2 6 2 7 2 8 2 9 2 10
    2 4 8 16 32 64 128 256 512 1024

    Bir önceki sayının 2 ile çarpılmasıyla kolayca elde edilir. Yani bu sayıların hepsini hatırlamıyorsanız gerisini hatırladıklarınızdan çıkarmanız zor değil.

    Masa ikili sayılar onaltılık gösterimle 0'dan 15'e:

    0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
    0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
    0 1 2 3 4 5 6 7 8 9 A B C D E F

    Bilinen değerlere 1 eklenerek eksik değerlerin hesaplanması da kolaydır.

    Tamsayı Çevirisi

    O halde, doğrudan ikili sisteme dönüştürerek başlayalım. Aynı sayıyı alalım 810 10 . Bu sayıyı ikinin kuvvetlerine eşit terimlere ayırmamız gerekiyor.

    1. İkinin 810'a en yakın kuvvetini arıyoruz, onu geçmiyoruz. 29 = 512
    2. 810'dan 512'yi çıkarırsak 298 elde ederiz.
    3. 1 veya 0 kalana kadar 1. ve 2. adımları tekrarlayın.
    4. Bunu şu şekilde elde ettik: 810 \u003d 512 + 256 + 32 + 8 + 2 \u003d 2 9 + 2 8 + 2 5 + 2 3 + 2 1.
    O zaman iki yol var, bunlardan herhangi birini kullanabilirsiniz. Herhangi bir sayı sisteminde tabanının her zaman 10 olduğunu görmek ne kadar kolay. Tabanın karesi her zaman 100, küpü 1000 olacak. Yani sayı sisteminin tabanının derecesi 1 (bir), ve ondan sonra derece kadar sıfır vardır.

    Yöntem 1: Terimlerin göstergelerinin çıktığı basamaklara göre 1'i sıralayınız. Örneğimizde bunlar 9, 8, 5, 3 ve 1'dir. Geri kalan yerler sıfır olacaktır. Böylece, 810 10 = 1100101010 2 sayısının ikili gösterimini elde ettik. Birimler sıfırdan sağdan sola doğru sayılarak 9., 8., 5., 3. ve 1. sıralardadır.

    Yöntem 2: Terimleri en büyüğünden başlayarak alt alta ikisinin kuvvetleri şeklinde yazalım.

    810 =

    Ve şimdi bu adımları bir yelpaze katlanmış gibi bir araya getirelim: 1100101010.

    Bu kadar. Yol boyunca “kaç birim” sorunu ikili notasyon 810 numara?"

    Cevap, bu gösterimdeki terimler (ikinin kuvvetleri) kadardır. 810'da 5 tane var.

    Şimdi örnek daha basit.

    63 sayısını 5'li sayı sistemine çevirelim. 5'in 63'e en yakın kuvveti 25'tir (5'in karesi). Küp (125) zaten çok olacak. Yani 63, 5'in karesi ile küp arasında yer alır. Sonra 5 2 için katsayıyı seçiyoruz. Bu 2.

    63 10 = 50 + 13 = 50 + 10 + 3 = 2 * 5 2 + 2 * 5 + 3 = 223 5 elde ederiz.

    Ve son olarak, 8- ve 16-ondalık sistemler arasında çok kolay çeviriler. Tabanları ikinin kuvveti olduğu için, çeviri otomatik olarak, sadece rakamları ikili temsilleriyle değiştirerek yapılır. Sekizli sistem için, her basamak üç ikili basamakla ve onaltılık sistem için dört ile değiştirilir. Bu durumda, en önemli basamak dışında tüm baştaki sıfırlar gereklidir.

    547 8 sayısını ikili sisteme çevirelim.

    547 8 = 101 100 111
    5 4 7

    Bir tane daha, örneğin 7D6A 16.

    7D6A 16 = (0)111 1101 0110 1010
    7 D 6 A

    7368 sayısını onaltılık sisteme çevirelim.Önce sayıları üçe yazalım sonra uçtan dörde bölelim: 736 8 \u003d 111 011 110 \u003d 1 1101 1110 \u003d 1DE 16. C25 16 sayısını 8'li sisteme çevirelim. Önce sayıları dörde yazıyoruz sonra uçtan üçe bölüyoruz: C25 16 \u003d 1100 0010 0101 \u003d 110 000 100 101 \u003d 6045 8. Şimdi tekrar ondalık sayıya dönüştürmeyi düşünün. Zor değil, asıl mesele hesaplamalarda hata yapmamak. Sayıyı, taban dereceleri ve katsayıları olan bir polinomda ayrıştırıyoruz. Sonra çarpıyoruz ve her şeyi ekliyoruz. E68 16 = 14 * 16 2 + 6 * 16 + 8 = 3688. 732 8 \u003d 7 * 8 2 + 3 * 8 + 2 \u003d 474 .

    Negatif sayıların çevirisi

    Burada, sayının temsil edileceğini dikkate almanız gerekir. ek kod. Bir sayıyı ek bir koda çevirmek için, sayının son boyutunu, yani onu neye yazmak istediğimizi - bir bayta, iki bayta, dörde - bilmeniz gerekir. Sayının en anlamlı basamağı işaret anlamına gelir. 0 varsa sayı pozitif, 1 ise negatiftir. Solda, sayı bir işaret biti ile doldurulur. İşaretsiz sayıları dikkate almayız, bunlar her zaman pozitiftir ve içlerindeki en önemli rakam bilgi amaçlı kullanılır.

    çeviri için negatif sayıİkili ek kodda, pozitif bir sayıyı ikili sisteme dönüştürmeniz, ardından sıfırları birlere ve birleri sıfırlara değiştirmeniz gerekir. Ardından sonuca 1 ekleyin.

    Öyleyse -79 sayısını ikili sisteme çevirelim. Sayı bizi bir bayt alacak.

    79'u ikili sisteme çeviriyoruz, 79=1001111. Byte boyutuna 8 bit sola sıfırları ekliyoruz, 01001111 elde ediyoruz. 1'i 0, 0'ı 1 olarak değiştiriyoruz. 10110000 elde ediyoruz. 10110001 cevabını alıyoruz. Yol boyunca, “-79 sayısının ikili gösteriminde kaç birim var?” KULLANIM sorusuna cevap veriyoruz. Cevap 4'tür.

    Sayının tersine 1 eklemek, +0 = 00000000 ve -0 = 11111111 gösterimleri arasındaki farkı ortadan kaldırır. İkinin tümleyen kodunda, aynı 00000000 yazılacaktır.

    Kesirli sayıların çevirisi

    Kesirli sayılar, tamsayıların en başta ele aldığımız tabana bölünmesinin tersi şekilde çevrilir. Yani, tüm parçaların toplanmasıyla yeni bir tabanla art arda çarpma yoluyla. Çarpma sonucu elde edilen tamsayı parçaları toplanır ancak aşağıdaki işlemlere katılmaz. Sadece kesirler çarpılır. Orijinal sayı 1'den büyükse, tamsayı ve kesirli kısımlar ayrı ayrı çevrilir ve ardından birbirine yapıştırılır.

    0.6752 sayısını ikili sisteme çevirelim.

    0 ,6752
    *2
    1 ,3504
    *2
    0 ,7008
    *2
    1 ,4016
    *2
    0 ,8032
    *2
    1 ,6064
    *2
    1 ,2128

    Kesirli kısımdaki tüm sıfırları alana kadar veya gerekli doğruluk sağlanana kadar işleme uzun bir süre devam edilebilir. Şimdilik 6. işarette duralım.

    0.6752 = 0.101011 çıkıyor.

    Sayı 5.6752 ise ikili olarak 101.101011 olacaktır.