Преобразование двоичного в восьмеричное или шестнадцатеричное.Какой из них прост (компилятор языка C) - PullRequest
0 голосов
/ 22 сентября 2011

Я изучал некоторые вопросы, связанные с языком программирования C. И я нашел этот вопрос запутанным. http://www.indiabix.com/c-programming/bitwise-operators/discussion-495

Вопрос заключается в том, "легко ли для компилятора переменного тока преобразовать двоичный код в шестнадцатеричный или двоичный в восьмеричный. Объяснение, приведенное здесь, группирует каждые 4 бита и преобразует его в шестнадцатеричный код. Но очень легко сгруппировать 3 бита и преобразовать его в восьмеричное. Или человеку легче преобразовать восьмеричное, чем шестнадцатеричное?

Какой самый простой способ компилятора преобразовать двоичный код в восьмеричный / шестнадцатеричный

Ответы [ 2 ]

1 голос
/ 22 сентября 2011

Все они одинаковы по легкости. Тем не менее, в вычислительном мире использование восьмеричного довольно редко по сравнению с шестнадцатеричным. Единственное весьма важное использование - это разрешения в стиле Unix, за исключением того, что это шестнадцатеричный и двоичный код, который играет ведущую роль (наряду с десятичным для общепринятого для человека стиля).

0 голосов
/ 22 сентября 2011

Восьмеричное и шестнадцатеричное могут быть преобразованы из двоичного кода путем группировки битов (3 в восьмеричном и 4 в шестнадцатеричном) http://www.ascii.cl/conversion.htm

Но дело в том, что память, выделенная компилятором, находится в2 ^ n, и вы не можете разделить блоки размером 2 ^ n 3, в то время как это можно легко сделать с шестнадцатеричным значением, где размер блока равен 4

, например, с целочисленным значением gcc 32 бит, которое не может быть разделено наравно 3 бита 32/3 = 10,666, в то время как его можно разделить на 4 бита, блок 32/4 = 8

Надеюсь, я разъясню свою точку зрения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...