Введение

Программируемый калькулятор, выпускавшийся компанией Hewlett Packard.

HP 16C Computer Scientist – это программируемый карманный калькулятор, производившийся компанией Hewlett Packard с 1982 по 1989 год. Он был специально разработан для использования программистами и помощи в отладке программ. Он относится к серии программируемых калькуляторов HP Voyager. Это был единственный калькулятор, специально предназначенный для программистов, выпущенный HP, хотя многие последующие модели HP включили в себя большинство функций 16C.

Особенности

16C может отображать целые числа в шестнадцатеричной, десятичной, восьмеричной и двоичной системах счисления, а также преобразовывать числа из одной системы счисления в другую. Он также работает с числами с плавающей запятой. Для размещения длинных целых чисел дисплей можно прокручивать влево и вправо. Для обеспечения совместимости с компьютером, с которым работает программист, размер слова может быть установлен в диапазоне от 1 до 64 бит. Бинарные арифметические операции могут выполняться как с беззнаковыми числами, так и с использованием представления в дополнительном коде единиц или дополнительном коде двойки. Это позволяет калькулятору эмулировать компьютер программиста. Для помощи программисту предусмотрен ряд специализированных функций, включая сдвиг влево и вправо, циклический сдвиг влево и вправо, маскирование и побитовые логические операции. Помимо функций для программистов, возможности калькулятора ограничены базовыми арифметическими операциями (а также вычислением обратной величины и квадратного корня), что означало, что обычные пользователи также использовали бы обычный научный калькулятор. Числа с плавающей запятой поддерживаются только для десятичной системы счисления. Однако он все равно значительно мощнее (хотя и намного дороже), чем современные конкуренты, такие как не программируемый компьютерный математический калькулятор Casio CM 100 или TI LCD Programmer или Programmer II. На задней панели 16C имеется печатная справочная таблица для многих его функций. Калькулятор использует проприетарный процессор HP Nut, изготовленный по технологии массового CMOS-процесса, и оснащен постоянной памятью, благодаря которой содержимое памяти сохраняется при выключении калькулятора. Хотя сейчас это обычная практика, в начале 1980-х годов это было заметным преимуществом и является причиной появления буквы "C" в названии модели.

Программирование

16С, как и все остальные модели серии Voyager, является программируемым. Используется программирование нажатием клавиш. Доступно до 203 шагов программы и до 16 меток/шагов программы. Каждый шаг и метка занимают один байт, что потребляет 7 байт регистровой памяти. Вот пример программы, вычисляющей факториал целого числа от 2 до 69. Программа занимает 9 байт. Коды, отображаемые при вводе программы, обычно соответствуют координатам строки/столбца клавиш на клавиатуре.

Шаг Нажатия клавиш (модификаторы не показаны) Отображаемый код Комментарий
001 43,22, F Определить метку F (мнемоническое обозначение для "факториал")
002 42 22 Сохранить x в регистр I
003 1 Сохранить 1 в x
004 43,22, 0 Определить метку 0
005 45 32 Извлечь из регистра I в x
006 20 Умножить x на y
007 43 23 Уменьшить регистр I и, если не ноль,
008 22 0 вернуться к метке 0
009 43 21 Остановить программу – результат отображается в x

Для запуска программы введите аргумент в стек, затем выполните последовательность нажатий клавиш. Результат отображается после завершения программы.

Наследие

HP никогда не выпускала другой калькулятор, специально предназначенный для программистов. Доступно несколько эмуляторов для настольных компьютеров, веб-браузеров, смартфонов и других калькуляторов. В 2012 году SwissMicros (также известная как RPN Calc) представила миниатюрный клон DM 16CC, размеры которого приближены к размеру кредитной карты ID 1 (88 мм × 59 мм × 7 мм). Он точно эмулирует функциональность оригинального HP 16C, запуская исходный образ ROM в эмуляторе на процессоре ARM Cortex M0, основанном на NXP LPC1114. Новые модели DM16 оснащены улучшенной клавиатурой и большим объемом оперативной памяти (LPC1115). Также доступно серебряное издание DM16 в титановом корпусе в трех цветовых вариантах (металлик, коричневый, синий). Отклоняясь от оригинала, эти калькуляторы оснащены точечно-матричным дисплеем, переключаемыми шрифтами и тактовыми частотами, а благодаря чипу-преобразователю Silicon Labs CP2102 они имеют последовательный интерфейс USB (Mini B) для обмена данными с ПК и т. д. с целью создания резервных копий (и, возможно, для связи с приложениями, такими как эмуляторы HP 16C для ПК) или обновления прошивки. В декабре 2015 года SwissMicros представила DM16L – версию калькулятора, размеры которой примерно соответствуют оригинальному HP 16C. Он по-прежнему оснащен разъемом USB Mini B. Питание через USB не поддерживается. В июле 2023 года лицензиаты HP Development Company, L. P. – Moravia Consulting spol. s r. o. и Royal Consumer Information Products, Inc. – представили коллекционное издание hp 15C, которое также включает в себя неопубликованный режим эмуляции HP 16C. Исходная прошивка содержала ошибку, из-за которой числа, чье шестнадцатеричное представление заканчивается на E или F, отображались некорректно в десятичном режиме, которая была исправлена усилиями сообщества в октябре 2023 года.