пятница, 1 февраля 2013 г.

онлайн из десятичную в шестнадцатеричной

Давайте рассмотрим гипотетический пример инсталляции интерфейсной карты ScanJet. Нам необходимо убедиться в том, что адреса ПЗУ, установленного на интерфейсной карте, не конфликтуют с адресами любых других ПЗУ, установленных в системе.Предположим, что ПЗУ VGA использует адреса СООО0ЂЂЂC5FFF. Интерфейс сканера имеет установленный по умолчанию диапазон С4000ЂЂЂC7FFF. Если бы мы использовали EGA карту, то все бы сошло с рук, поскольку ПЗУ EGA заканчивается на C3FFF.Поэтому у вас могут возникнуть определенные трудности, так что давайте рассмотрим наше положение.1. Диапазон адресов сканера установлен по умолчанию как С4000ЂЂЂC7FFF. Этот диапазон значений занимает 16 К адресов.2. Диапазон адресов EGA ПЗУ (если система использует EGA) составляет С0000ЂЂЂ C3FFF и конфликтов с ПЗУ ScanJet не возникает. В шестнадцатеричной системе числа можно сравнивать точно так же, как и в десятичной. Если число разрядов одинаково, то достаточно сравнить крайние слева разряды. В данном случае они одинаковы и равны С, поэтому мы должны перейти к рассмотрению числа расположенного правее. Поскольку 4 идет после 3, значит С4000 будет расположено после C3FFF....

3. Диапазон адресов VGA ПЗУ составляет С0000ЂЂЂC5FFF и конфликтует с адресами ПЗУ ScanJet ЂЂЂ С4000ЂЂЂC7FFF. Эти адреса перекрываются: нижняя граница адреса ПЗУ ScanJet, равная С4000 меньше, чем верхняя граница VGA ПЗУ, равная C5FFF.Мы кратко рассмотрели использование шестнадцатеричного представления для диапазона адресов I/O и адресов памяти. Если вы хотите узнать, как можно преобразовать шестнадцатеричные числа в десятичные (и наоборот), продолжайте читать дальше....

Это не слишком сложно и в принципе можно обойтись и без этого ЂЂЂ жизнь не остановится.Предположим, у меня есть шестнадцатеричное число, например C801F. Я хочу преобразовать его в десятичное число. Мы будем преобразовывать его справа налево, используя степени числа 16. Удобнее всего это показать в виде таблицы (см. табл. A.З).Табл. А.З. Преобразование шестнадцатеричного числа в десятичноеРазряды5-й4-й3-й2-й1-йЦифры числаC801FДесятичный эквивалент1280115Степень числа 1616*=65536163=4096162=256161=16160=1Произведение7864323276801615Сумма819231...

Возьмем крайнюю правую цифру числа. Если она равна нулю, то мы можем перейти к следующей цифре. В нашем случае ЂЂЂ это цифра F. Ее десятичный эквивалент ЂЂЂ число 15. Это число надо умножить на основание системы счисления (16), возведенное в степень 0 и сохранить этот промежуточный результат. Эта цифра преобразована и ее можно отбросить.Опять возьмем крайнюю правую цифру числа. Это цифра 1 и ее десятичный эквивалент совпадает с шестнадцатеричным. Это число надо умножить на основание системы счисления (16), возведенное в степень 1 и сохранить промежуточный результат. И эта цифра преобразована и ее тоже можно отбросить.Аналогичные действия повторяются для всех оставшихся цифр числа до тех пор, пока все они не будут преобразованы. После этого достаточно сложить промежуточные результаты ЂЂЂ и вы получите десятичный эквивалент шестнадцатеричного числа. В данном случае это число равно 819231....

Это процедура обратная описанной выше. Давайте преобразуем число 75000 из десятичной системы в шестнадцатеричную. Такое преобразование выполняется путем деления числа на основание системы счисления с использованием остатка в качестве значащих цифр числа. Удобнее всего это показать в виде таблицы.Табл. А.4. Преобразование десятичного числа в шестнадцатеричноеЧислоОснование системыЧастноеЦелочисленное частноеОстатокШестнадцатеричное представление остатка75000164687,5468788468716292,9429215F2921618,25184418161,1251221160,062501...

1. Возьмем десятичное число и разделим его на 16. В результате мы получим число (частное), равное 4687,5. Это результат деления без остатка, но нас интересует результат деления с остатком, поскольку остаток мы используем в качестве значащих цифр числа. Для этого мы отбрасываем дробную часть числа, целочисленное частное умножаем на основание системы счисления и, вычитая результат из числа, получаем искомый остаток. В данном случае он равен 8. Шестнадцатеричный эквивалент 8 -8, поэтому число переписывается в последний столбец таблицы без изменений. 2. Теперь в качестве числа используется целочисленный остаток. Он снова делится на 16, и снова нас интересует остаток от этого деления. Результат этой операции равен 15 ЂЂЂ шестнадцатеричный эквивалент его равен F.3. Эта п...

Срочная помощь! Лучший в Москве спешит Вам на помощь. 24 часа.

Профессиональный пользователь компьютера

Комментариев нет:

Отправить комментарий