[[oktatas:számítástechnika|< Számítástechnika]] ====== Számrendszerek ====== * **Szerző:** Sallai András * Copyright (c) 2011, Sallai András * Szerkesztve: 2011, 2023 * Licenc: [[https://creativecommons.org/licenses/by-sa/4.0/|CC BY-SA 4.0]] * Web: https://szit.hu ===== Hatványok ===== Minden számrendszer alapjának a hatványait használjuk egy mennyiség leírására. Az informatikában leggyakrabban használt számrendszerek: * kettes * tízes * tizenhatos A mennyiségek leírását jobbról balra szokás végezni. Az egymás mellé írt számjegyek mindegyike egy-egy helyiértéket jelöl. Minden helyiértékhez egy hatványozott alakot rendelünk jobbról balra. Jobbról az első helyiértékhez mindig a nulladik hatvány értékét rendeljük. Utána az első, majd a második, a harmadik és így tovább. A következő táblázatok ezt mutatják be számrendszerenként. ==== Tíz hatványai ==== ^ Hatvány | 10^8 | 10^7 | 10^6 | 10^5 | 10^4 | 10^3 | 10^2 | 10^1 | 10^0 | ^ Érték | 100_000_000 | 10_000_000 | 1_000_000 | 100_000 | 10_000 | 1000 | 100 | 10 | 1 | Figyeljük meg a táblázatot jobbról. Az első érték 1, utána 10, 100 stb. Ennek megfelelően a helyiértékek úgy alakulnak a tízes számrendszerben, hogy jobbról az első a 1 értékek darabszámát mutatják, a következő helyiértéken található szám a tízesek darabszámát mutatja, a harmadik helyiértéken található szám a százasok darabszámát mutatja stb. ==== Kettő hatványai ==== ^ Hatvány | 2^8 | 2^7 | 2^6 | 2^5 | 2^4 | 2^3 | 2^2 | 2^1 | 2^0 | ^ Érték | 256 | 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 | ==== Tizenhat hatványai ==== ^ Hatvány | 16^8 | 16^7 | 16^6 | 16^5 | 16^4 | 16^3 | 16^2 | 16^1 | 16^0 | ^ Érték | 4 294 967 296 | 268 435 456 | 16 777 216 | 1 048 576 | 65 536 | 4096 | 256 | 16 | 1 | ===== Binárisból váltás decimálisba ===== Az átváltáshoz 2 hatványait használjuk. ^ Hatvány | 2^8 | 2^7 | 2^6 | 2^5 | 2^4 | 2^3 | 2^2 | 2^1 | 2^0 | ^ Érték | 256 | 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 | Ha adott egy bináris szám: 000100101 Akkor jobbról balra veszem helyiértékenként: * egyesek: Van egy darab, mert a 1-es van az egyesek helyén, leírom az 1-et * kettesek: Nincs belőle nekünk, mert 0 van a kettesek helyén. Nem írok semmit. * négyesek: Van egy darab, mert a 1-es van a négyesek helyén, leírom az 4-et * nyolcasok: Nincs belőle nekünk, mert 0 van a nyolcasok helyén. Nem írok semmit. * tizenhatosok: Nincs belőle nekünk, mert 0 van a nyolcasok helyén. Nem írok semmit. * harminckettesek: Van egy darab, mert a 1-es van a harminc kettesek helyén, leírom az 16-et Ezt írtuk le: 1 4 16 Összeadjuk: 1 4 +32 --- 37 Az alábbi táblázatban jól látszik, hogy ott számoltunk az értékkel, ahol a számban 1-s volt: ^ Hatvány | 2^8 | 2^7 | 2^6 | 2^5 | 2^4 | 2^3 | 2^2 | 2^1 | 2^0 | ^ Érték | 256 | 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 | ^ Egy szám | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 1 | Ne felejtsük el, hogy ha leírom 000100101, akkor az első három csak vezető nulla, amit nem kötelező leírni. Tehát így is írhatom: 100101, ami egyezik az előző alakkal. ===== Hexadecimálisból váltás decimálisba ===== ^ Hatvány | 16^8 | 16^7 | 16^6 | 16^5 | 16^4 | 16^3 | 16^2 | 16^1 | 16^0 | ^ Érték | 4294967296 | 268435456 | 16777216 | 1048576 | 65536 | 4096 | 256 | 16 | 1 | Ugyanúgy járunk el, mint amikor binárisból váltunk decimálisba. ===== Decimálisból váltás más számrendszerbe ===== A decimális számot elosztjuk a kívánt számrendszer alapszámával. Az eredmény a maradék, visszafele olvasva. ===== Más számrendszerből decimálisba ===== Veszem a számrendszer hatványait 0-tól felfele (0, 1, 2, 3, stb.), az eredményt összeadom. ===== Binárisból oktálisba váltás ===== A bináris számot balról jobbra 3-as csoportokba rendezem. Minden számot behelyettesítek a 8-as számrendszerbeli megfelelőjével. | 101 | 001 | 111 | | 5 | 1 | 7 | 101001111b = 517o A hármas tagolás a következő miatt: 23 = 8 Még egy példa: | 001 | 101 | 111 | | 1 | 5 | 7 | 1101111b = 157o ^ 8 hatványai ^^^^^^^^^ | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | | 16777216 | 2097152 | 262144 | 32768 | 4096 | 512 | 64 | 8 | 1 | ===== Oktálisból binárisba váltás ===== A tagokat behelyettesítem a bináris megfelelőjével. ===== Binárisból hexadecimálisba váltás ===== A bináris számot 4-es egységekbe rendezem balról kezdve. Minden négyes egységet behelyettesítek a hexadecimális megfelelőjével. | 0010 | 1100 | 0011 | | 2 | C | 3 | 1011000011b = 2c3h A négyes tagolás a következő miatt: 24 = 16 ===== 10 hatványai ===== ^ hatvány ^ magyar ^ US, modern angol ^ | 100 | egy | one | | 101 | tíz | ten | | 102 | száz | hundred | | 103 | ezer | thousand | | 106 | millió | million | | 109 | milliárd | billion | | 1012 | billió | trillion | | 1015 | billiárd | quadrillion | | 1018 | trillió | quintillion | | 1021 | trilliárd | sextillion | | 1024 | kvadrillió | septillion | | 1027 | kvadrilliárd | octillion | | 1030 | kvintillió | nonillion | | 1033 | kvintilliárd | decillion| | 1036 | szextillió | undecillion | ===== Tizedes tört részek ===== ^ Ejtve ^ Egy értékkel ^ | tized | 0,1 | | század | 0,01 | | ezred | 0,001 | | tízezred | 0,0001 | | százezred | 0,00001 | | milliomod | 0,000001 | | tízmilliomod | 0,0000001 | | százmilliomod | 0,00000001 | Példa: 0,000044 => 0 egész 44 milliomod ===== Bináris hexadecimális ===== ^ Binary ^ Hex ^ Decimális ^ | 0000 | 0 | 0 | | 0001 | 1 | 1 | | 0010 | 2 | 2 | | 0011 | 3 | 3 | | 0100 | 4 | 4 | | 0101 | 5 | 5 | | 0110 | 6 | 6 | | 0111 | 7 | 7 | | 1000 | 8 | 8 | | 1001 | 9 | 9 | | 1010 | A | 10 | | 1011 | B | 11 | | 1100 | C | 12 | | 1101 | D | 13 | | 1110 | E | 14 | | 1111 | F | 15 | * 1100b = 0Ch * 111001b = 39h * 10011100b = 9Ch