- •Введение Основные определения
- •Системы счисления Основные определения
- •Двоичная, восьмеричная и шестнадцатеричная системы счисления
- •Смешанные системы счисления
- •Перевод чисел из одной системы счисления в другую
- •Арифметические действия в системах счисления с основанием, отличным от 10
- •Двоично-восьмеричные и двоично-шестнадцатеричные преобразования
- •Обратный и дополнительный коды и их применение в операциях с отрицательными числами
- •Сложение и вычитание чисел со знаком в дополнительном коде
- •Архитектура персонального компьютера История развития вычислительной техники
- •Основные термины и определения
- •Функциональная структура компьютера
- •Архитектура микропроцессора
- •Регистры общего назначения и сегментные регистры
- •Управляющие регистры Регистр cr0.
- •Память компьютера
- •Структура программы на языке Ассемблера Формат кодирования в языке Ассемблера
- •Структура программы на ассемблере
- •Простейшая программа в ос Windows
- •Типы и форматы данных в ассемблере
- •Базовая система команд микропроцессора ia-32
- •Операнды языка ассемблер
- •Стандартные директивы сегментации
- •Макрокоманды
- •Процедуры (функции)
- •Организация интерфейса с процедурой
- •Возврат результата из процедуры
- •Связь ассемблера с языками высокого уровня
- •Обработка прерываний
- •Создание исполняемого файла
- •Отладка программы
- •Математический сопроцессор
- •Представление чисел с плавающей точкой в разрядной сетке вычислительной машины
- •Архитектура сопроцессора
- •Система команд сопроцессора
- •Команды передачи данных
- •Команды загрузки констант
- •Команды сравнения данных
- •Арифметические команды
- •Команды управления математическим сопроцессором
- •Пример программы с использованием команд сопроцессора
- •Сложные типы данных Структуры
- •Объединения
- •Программирование для windows
- •Основы программирования в ос Windows
- •Консольные приложения Windows
- •Работа с файлами в системе Windows
- •Вывод чисел в консоль
- •Оконные (каркасные) приложения Windows
- •Графика в оконных приложениях Windows
- •Ресурсы в Windows-приложениях
- •Приложение 1
Смешанные системы счисления
Смешанной называется такая система счисления, в которой числа, заданные в некоторой системе счисления с основанием P изображаются с помощью цифр другой системы счисления с основанием Q, где Q<P. В такой системе P называется старшим основанием, Q — младшим основанием, а сама система счисления называется Q-P-ичной. Для того, чтобы запись числа в смешанной системе счисления была однозначной, для представления любой P-ичной цифры отводится одно и то же количество Q-ичных разрядов, достаточное для представления любого базисного числа P-ичной системы.
Так, в двоично-десятичной системе для изображения каждой цифры отводится 4 двоичных разряда. Например, число 92510 запишется в двоично-десятичной системе как 1001 0010 0101. Здесь последовательные четверки (тетрады) двоичных разрядов изображают цифры 9, 2 и 5 десятичной записи соответственно.
Следует отметить, что, хотя в двоично-десятичной записи используются только цифры «0» и «1», эта запись отличается от двоичного изображения данного числа. Например, двоичный код 1001 0010 0101 соответствует десятичному числу 2341, а не 925.
Особого внимания заслуживает случай, когда P=Ql (l – целое положительное число). В этом случае запись какого-либо числа в смешанной системе счисления тождественно совпадает с изображением этого числа в системе счисления с основанием Q: A216 = 1010 00102.
Перевод чисел из одной системы счисления в другую
Задача перевода заключается в следующем: Пусть известна запись числа x в системе счисления с каким-либо основанием P:
,
где pi – цифры P-ичной системы . Требуется найти запись этого числа x в системе счисления с основанием Q:
,
где qi – искомые цифры Q-ичной системы .
Для перевода любого числа достаточно отдельно перевести его целую и дробную части.
Перевод целых чисел.
Представим число x в Q-ичной системе в виде полинома
(1)
Для определения в поставленной задаче разделим обе части равенства (1) на Q, причем в левой части произведем фактическое деление, поскольку запись числа x в P-ичной системе нам известна, а в правой части деление выполним аналитически:
. (2)
Таким образом, младший коэффициент в разложении (1) является остатком от деления x на Q. Число является целым, и к нему тоже можно применить описанную процедуру:
, (3)
а – остаток от деления (3).
Этот процесс продолжается до тех пор, пока не получено xs+1=0. Для записи числа x в Q-ичной системе счисления запишем каждый из полученных коэффициентов одной Q-ичной цифрой.
Пример 1: Перевести число 4710 в двоичную систему счисления (Q = 2).
Искомое число 4710 = 1011112.
Пример 2: Перевести число 306010 в шестнадцатеричную систему счисления (Q = 16).
Таким образом, =410 = 416, =1510 = F16, =1110 = B16. Искомое число 306010 = BF416.
Перевод дробных чисел
Пусть необходимо перевести в Q-ичную систему правильную дробь x (0<x<1), заданную в P-ичной системе счисления.
Поскольку x<1, то в Q-ичной системе запись числа x будет иметь вид
(4)
Умножив обе части выражения (4) на Q, получим
,
где является целой частью, а – правильная дробь. Искомые коэффициенты могут быть определены по формуле
,
где [ ] – целая часть. Процесс продолжается до тех пор, пока не будет получено , либо не будет достигнута требуемая точность числа.
Пример 3: Перевести число 0,2510 в двоичную систему счисления
Искомое число x = 0,2510 = 0,012.