Перевод чисел в различные системы счисления
Рассмотрим пример перевода числа 1000101010011011 из двоичной в восьмеричную систему счисления в однобайтовое в беззнаковое
Данный перевод возможен двумя способами: прямой перевод и через десятичную систему.
Выполним прямой перевод.
Дополним число недостающими нулями слева
Выполним прямой перевод из двоичной в восмеричную вот так:
= 001 000 101 010 011 011
= 001(=1) 000(=0) 101(=5) 010(=2) 011(=3) 011(=3)
= 152338
Выполним перевод через десятичную систему счисления.
Выполним перевод в десятичную систему счисления вот так:
= 1∙32768 + 0∙16384 + 0∙8192 + 0∙4096 + 1∙2048 + 0∙1024 + 1∙512 + 0∙256 + 1∙128 + 0∙64 + 0∙32 + 1∙16 + 1∙8 + 0∙4 + 1∙2 + 1∙1
= 32768 + 0 + 0 + 0 + 2048 + 0 + 512 + 0 + 128 + 0 + 0 + 16 + 8 + 0 + 2 + 1
= 3548310
Получилось: 10001010100110112 = 3548310
Переведем число 3548310 в восьмеричное вот так:
Целая часть числа находится делением на основание новой системы счисления:
| 35483 | 8 | ||||||
| -35480 | 4435 | 8 | |||||
| 3 | -4432 | 554 | 8 | ||||
| 3 | -552 | 69 | 8 | ||||
| 2 | -64 | 8 | 8 | ||||
| 5 | -8 | 1 | |||||
| 0 | |||||||
Направление взгляда | |||||||
В результате преобразования получилось: