Объединение профессиональных программистов "EnkoSoft"

Главная Ассемблер C/C++ FoxPro HTML Сети Железо Download Письмо мне

Итак, как же компьютер считает?

Поскольку компьютер это обычный набор выключателей, то считать он может только в двоичной системе исчисления (вкл. или выкл.) т.е. 1 или 0. Таким образом от 0 до 7 он будет считать так: 0, 1, 10, 11, 100, 101, 110, 111
Разумеется считать нам в такой системе неудобно. Поэтому принята шестнадцатеричная исчисления. Так сказать удобно и компьютеру и нам. Рассмотрим это подробноее. Поскольку голую математику читать трудновато с непривычки, давайте поработаем с компьютером. Итак, в каталоге WINDOWS\COMMAND\ находим файл debug.exe и запускаем его. Посольку программа работает в шестнадцатеричной арифметике небольшая справка. Десятичная 9,10,11,12,13,14,15,16,17,18,19,20,21,22,23. Шестнадцатеричная 9,A,B,C,D,E,F,10,11,12,13,14,15,16,17,18,19,1A,1B Другими словами 10Н = 16D, Н- означает что число шестнадцатиричное,D-десятичное. Теперь с помощью нашей новой программы попробуем посчитать. Для этого существует команда H (Hexarit-hmetric) Шестнадцатиричная арифметика Кстати выход из программы - Q. Печатает программа как сумму, так и разность.

-H54
0009	0001
-H91
000A	0001	-	Как вы поняли шестн. А это десят. 10

Отсюда можно посчитать, что макимально возможное количество чисел из двух шестнадцатиричных цифр это 256. от 0 до 255.
Теперь пора бы научиться переводить вручную из 16-ричных в 10-тичные и обратно. Если вы после школы не забыли математику то это достаточно просто.
Десятичное 234 это 2*10^2+3*10^1+4*10^0
Шестнадцатеричное 234 это 2*16^2+3*16^1+4*16^0 = (дальше сами)
Перевод обратно следующий - делим десятичное на 16 и из остатков формируем шестнадцатеричное в обратном порядке. Попробуйте поскладывать числа в дебаге, потом проверьте ответ сами. Не забудьте, что дебаг понимает только шестнадцатеричные числа.
В ассемблер

Сайт управляется системой uCoz