A 10-es számrendszerben tíz darab számjegyet használunk, {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}.
Egy számban egy számjegy értéke annak helyétől is függ, pl. 1234 = 4 + 3·101 + 2·102 + 1·103.
Általában egy p alapú számrendszer számjegyei {0, 1, 2, …, p-1}. Ha p > 10, akkor az arab számjegyek mellett betűket is használunk. Pl. a 16-os számrendszerben: {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F} a számjegyek, ahol A=10, B=11, C=12, D=13, E=14, F=15.
Számoljunk egyesével!
| 10-es szr. | 2-es szr. | 2-es szr. 8 biten | 8-as szr. | 16-os szr. |
|---|---|---|---|---|
| 0 | 0 | 0000 0000 | 0 | 0 |
| 1 | 1 | 0000 0001 | 1 | 1 |
| 2 | 10 | 0000 0010 | 2 | 2 |
| 3 | 11 | 0000 0011 | 3 | 3 |
| 4 | 100 | 0000 0100 | 4 | 4 |
| 5 | 101 | 0000 0101 | 5 | 5 |
| 6 | 110 | 0000 0110 | 6 | 6 |
| 7 | 111 | 0000 0111 | 7 | 7 |
| 8 | 1000 | 0000 1000 | 10 | 8 |
| 9 | 1001 | 0000 1001 | 11 | 9 |
| 10 | 1010 | 0000 1010 | 12 | A |
| 11 | 1011 | 0000 1011 | 13 | B |
| 12 | 1100 | 0000 1100 | 14 | C |
| 13 | 1101 | 0000 1101 | 15 | D |
| 14 | 1110 | 0000 1110 | 16 | E |
| 15 | 1111 | 0000 1111 | 17 | F |
| 16 | 10000 | 0001 0000 | 20 | 10 |
| 17 | 10001 | 0001 0001 | 21 | 11 |
| 18 | 10010 | 0001 0010 | 22 | 12 |
| 19 | 10011 | 0001 0011 | 23 | 13 |
| 20 | 10100 | 0001 0100 | 24 | 14 |
| 21 | 10101 | 0001 0101 | 25 | 15 |
| 22 | 10110 | 0001 0110 | 26 | 16 |
| 23 | 10111 | 0001 0111 | 27 | 17 |
| 24 | 11000 | 0001 1000 | 30 | 18 |
| 25 | 11001 | 0001 1001 | 31 | 19 |
Átalakítások
Tetszőleges számrendszerből 10-es számrendszerbe úgy tudunk átalakítani, hogy a számjegyeket helyiértékükkel megszorozzuk és összeadjuk ezeket a szorzatokat (mindvégig tízes számrendszerben végezve a műveleteket).
Példák:
- 123(8) = (3·80 + 2·81 + 1·82)(10) = (3 + 16 + 64)(10) = 83(10)
- 12B(16) = (B·160 + 2·161 + 1·162)(10) = (11 + 32 + 256)(10) = 299(10)
- 100100(2) = (0·20 + 0·21 + 1·22 + 0·23 + 0·24 + 1·25)(10) = (4 + 32)(10) = 36(10)
Tízes számrendszerből tetszőleges számrendszerbe úgy tudunk átalakítani, hogy a számot ismételten osztjuk a számrendszer alapjával és leírjuk a maradékokat fordított sorrendben. Az osztásokat mindig a hányadossal folytatjuk és addig ismételjük, míg az nullává nem válik.
Példák:
100(10) = ?(8)
Tehát 100(10) = 144(8).
Ellenőrzés fordított irányú átalakítással: 144(8) = (4·80 + 4·81 + 1·82)(10) = (4 + 32 + 64)(10) = 100(10).50(10) = ?(2)
Tehát 50(10) = 110010(2).
Ellenőrzés: 110010(2) = (0·20 + 1·21 + 0·22 + 0·23 + 1·24 + 1·25)(10) = (2 + 16 + 32)(10) = 50(10).
Két tetszőleges, p és q alapú számrendszer között úgy tudunk átalakítani, hogy előbb a p számrendszerből tízesbe, majd tízesből a q számrendszerbe alakítunk.
Gyakorlatok (HF)
Végezzük el az átalakításokat és ellenőrizzük a fordított irányú átalakításokkal:
- 10011001(2) = …(10) = …(16)
- 755(8) = … (10) = … (2)
- 12AB(16) = … (10) = … (2)
- 124(5) = … (10) = … (9)
Eredmények:
- 10011001(2) = 153(10) = 99(16)
- 755(8) = 493(10) = 11101101(2)
- 12AB(16) = 4779(10) = 1001010101011(2)
- 124(5) = 39(10) = 43(9)
Gyors átalakítások a 2-es, 8-as és 16-os számrendszerek között
- 16 = 24 ezért egy darab 16-os számrendszerbeli számjegy értékét pontosan 4 bittel lehet ábrázolni, továbbá két egymás melletti helyiérték között pont annyiszoros a különbség 16-os számrendszerben, mint a kettes számrendszerben négy helyiérték távolság esetén;
- tehát át tudunk alakítani 16-os számrendszerből 2-es számrendszerbe úgy, hogy minden számjegyet a megfelelő 4 bittel helyettesítünk:
0 1 2 3 4 5 6 7
0000 0001 0010 0011 0100 0101 0110 0111
8 9 A B C D E F
1000 1001 1010 1011 1100 1101 1110 1111
- fordítva, 2-es számrendszerből 16-osba úgy tudunk átalakítani, hogy a számjegyeket négyesével csoportosítjuk jobbról balra haladva, majd minden négyes csoportnak egy-egy 16-os számrendszerbeli számjegy felel majd meg;
- a 8-as és 2-es számrendszerek között hasonló a helyzet: 8 = 23, ezért minden 8-as számrendszerbeli számjegynek pontosan három darab 2-es számrendszerbeli számjegy felel meg.
Gyakorlatok (HF)
Végezzük el az alábbi átalakításokat!
- FF(16) = … (2) = … (8)
- 12AB(16) = … (2) = … (8)
- 3CD11(16) = … (2) = … (8)
- 644(8) = … (2) = … (16)
- 70165(8) = … (2) = … (16)
Eredmények:
- FF(16) = 11111111(2) = 377(8)
- 12AB(16) = 1001010101011(2) = 11253(8)
- 3CD11(16) = 111100110100010001(2) = 746421(8)
- 644(8) = 110100100(2) = 1A4(16)
- 70165(8) = 111000001110101(2) = 7075(16)