Редактирование:
ЧАВО
(раздел)
Перейти к навигации
Перейти к поиску
Внимание:
Вы не вошли в систему. Ваш IP-адрес будет общедоступен, если вы запишете какие-либо изменения. Если вы
войдёте
или
создадите учётную запись
, её имя будет использоваться вместо IP-адреса, наряду с другими преимуществами.
Анти-спам проверка.
Не
заполняйте это!
== Часть Г. Технические вопросы по «Электронике». == === Г1.Q Мой мобильный телефон (фотоаппарат, наручные часы, любимая машинка для чистки ушей) и то мощнее! === Г1.A Следует отличать вычислительные возможности, которые микрокалькулятор предоставляет пользователю от частоты центрального процессора, ёмкости внутренних устройств памяти, и т.д. Мобильный телефон может содержать гигабайты памяти, его процессор может быть в десятки раз быстрее того, что стоит внутри [[МК-152]]. Но вычислительные возможности, которые встроенный в этот телефон калькулятор предоставляет пользователю, весьма скромны и редко выходят за пределы четырёх арифметических действий. Точно также компактный язык программирования, основанный на советских разработках, эффективен и выразителен. Он намного компактнее машинных кодов, которые используются при программировании зарубежных устройств (КПК, мобильников). Такие команды, как [[F ARCTG|арктангенс]] или [[×|умножение с плавающей точкой]] занимают один шаг (байт). Многочисленные научные и инженерные программы занимают меньше сотни шагов, причём этих программ может разместиться в памяти [[МК-152]] более сотни. У программ для [[МК-152]] и [[МК-161]] нет обязательных «прологов», «циклов сообщений» и «эпилогов» на многие килобайты. Если же учесть наличие встроенного (и внешних) электронных дисков, то до исчерпания возможностей [[МК-152]] ещё очень далеко. === Г2.Q Что такое «[[встроенная программа]]»? === Г2.A [[Встроенная программа]] это «операционная система» [[МК-152]] — без неё он был бы просто модным брикетиком из пластмассы. Под её управлением происходит ввод программ в память и их выполнение, чтение и запись с диска, вывод на индикатор и общение с внешними устройствами. Многие функции встроенной программы доступны нам через [[регистры функций]] (регистры с номерами 9000…9999) [7]. === Г3.Q Какова ёмкость памяти программ [[МК-152]]? === Г3.A Максимальная длина выполняемой программы — 10000 шагов. В этой памяти можно разместить как одну длинную программу для [[МК-152]], так и 100 независимых программ для [[Б3-34]]. Помимо памяти программ в [[МК-152]] присутствует [[электронный диск]] на 512К, позволяющий хранить тысячи программ (каждая программа занимает от 100 до 10к шагов). Программам даются имена, их можно группировать по каталогам, просматривать время создания и их текст (в латинской или традиционной транскрипции). Программы можно также записывать на внешние электронные диски, с помощью которых обмениваться информацией с друзьями. Выпускающийся диск ([[УЗВМК-1]]) имеет ёмкость 2048 блоков по 264 байта, то есть примерно равен по ёмкости диску, встроенному в [[МК-152]]. С помощью «доработки» запись на [[УЗВМК-1]] можно запретить. В отличии от ПМК, хранящаяся в памяти программа сохраняется при выключении питания. Более того, предусмотрена возможность автозапуска — очень удобно, если произошёл сбой питания. === Г4.Q Какова ёмкость и структура памяти данных [[МК-152]]? === Г4.A Выполняемая программа может адресовать 1000 десятичных регистров. Это полноценные регистры, знакомые по ПМК — в разных моделях которых их было 14-15. Точность представления мантиссы увеличена с 8 до 12 десятичных чисел (на четыре порядка). Помимо тысячи десятичных регистров (с номерами 0…999) программе доступны 7168 однобайтовых регистров (с номерами 1000…8167), которые разбиты на «двоичные» (1000…5095) и «текстовые» (5096…8167) [6]. Регистры с номерами от 9000 до 9999 используются под системные вызовы («функции») [7]. Также в [[МК-152]] есть [[электронный блокнот]], представляющий из себя 64К чисел с плавающей запятой, сгруппированных в таблицу из 16384 групп по четыре записи. Блокнот, [[текст]], десятичные и двоичные данные (точно также, как и память программ) можно просматривать и очищать средствами встроенной программы. Электронные диски (как внешние, так и внутренний) могут быть использованы для сохранения памяти данных (как десятичной, так двоичной и текста) в виде файла. Программа с одноимёнными файлами данных может образовывать «пакет». Данные, введённые в регистры с клавиатуры, автоматически сохраняются в энергонезависимой памяти и восстанавливаются при включении [[МК-152]]. Есть возможность сохранять регистры в энергонезависимой памяти из программы. === Г5.Q Каково быстродействие [[МК-152]]? === Г5.A [[МК-152]] выполняет тысячи (500…20000, в зависимости от сложности) операций в секунду. Даже если не задействовать новые возможности ЭКВМ, программы выполняются в 1000 раз быстрее, чем на ПМК семейства [[Б3-34]]. По тестам (например, 8 ферзей, англ.) [[МК-152]] в несколько раз превосходит быстродействием зарубежные программируемые калькуляторы. Показатель Performance Index у [[МК-152]] равен 147,6, что означает шестое место в мире среди калькуляторов, быстрее лишь некоторые из моделей фирмы HP. Также см. сравнительное тестирование [[МК-152]], выполненное sfrolov'ым. Оптимизация по быстродействию даже не производилась, т.к. оно избыточно для решения задач, на которые нацелена [[МК-152]]. Быстродействие [[МК-152]], как калькулятора, не следует путать (и сравнивать) с быстродействием [[Микроконтроллер|однокристальной микроЭВМ]], которая в [[МК-152]] работает на частоте 24МГц для обеспечения надёжности. При необходимости производительность можно удвоить, используя однокристалки с большей тактовой частотой. === Г6.Q Какая разрешающая способность ЖК-индикатора, режимы его работы? === Г6.A Жидкокристаллический индикатор с подсветкой представляет собой матрицу 128x64, чёрные точки на зелёном фоне. Размер рабочей области 55x27мм, её диагональ — 6,2 см, что даёт размер зерна 0,43 мм (2,3 точки на мм). В [[режим автоматической работы|режиме автоматической работы]] индикатором управляет встроенная программа, отображая содержимое четырёх регистров [[Стек калькулятора|стек]]а. В [[режим счёта|режиме счёта]] программа пользователя может обновлять этот экран с помощью команды [[К ЭКР]]. Для вывода текстовой информации предусмотрена [[строка комментариев]], доступная через регистры функций [[R9025|9025]]-[[R9027|9027]]. В [[графический экран|графическом режиме]] вся матрица 128x64 доступна для вывода точек, линий, символов, чисел и монохромных изображений. Для сравнения, разрешающая способность роскошного графического дисплея «Электроника МК-90» (последний советский серийный микрокомпьютер, Минск) — 120x64 точек при диагонали 13,5 см. Популярный микрокомпьютер «Электроника МК-85» (программировался на Бейсике, Зеленоград) имел 12 знакомест с матрицей 7x5. Правда, поверх этих знакомест могли отображаться четыре циферки и несколько фиксированных сообщений навроде RUN и DEG. === Г7.Q Какие графические примитивы поддерживает [[МК-152]]? === Г7.A Следующие графические возможности доступны пользователю через [[регистры функций]] [7]: * Очистить экран или закрасить его чёрным ([[R9010]]) * Вывод точки ([[R9011]]) * Прямая запись в графическую область памяти ([[R9005]], [[R9006]]) * Вывод линии ([[R9012]]) * Вывод прямоугольника ([[R9013]]) * Вывод рамки ([[R9014]]) * Вывод графического образа из памяти программ или данных ([[R9015]], [[R9016]]) * Вывод символа, строки символов из памяти программ или данных ([[R9020]]-[[R9022]]) * Вывод числа ([[R9023]], [[R9024]]) Рисование происходит с использованием одного из восьми [[атрибуты вывода|атрибутов вывода]], управляющих наложением рисунка на уже имеющуюся картинку. === Г8.Q Можно ли опрашивать клавиатуру, не останавливая работу программы? === Г8.A Да. Причём [[буфер клавиатуры]] может хранить до четырёх нажатий на кнопки, которые потом последовательно считываются ([[R9028]], [[R9029]]). Единственная клавиша, для считывания которой приходится идти на хитрость, это [[Клавиша С/П|клавиша {{Чёрная клавиша|С/П}}]] (Стоп/Пуск). Помимо работы по опросу в [[МК-152]] и [[МК-161]] предусмотрены прерывания от клавиатуры, по нажатию ([[R9153]]) и отпусканию ([[R9157]]) клавиши. === Г9.Q Как с традиционной клавиатуры вводятся буквы? === Г9.A В программу сообщения набиваются в шестнадцатеричном коде ([[режим ввода байтов|режим P ПРГ]]). В [[редактор текста|редакторе текста]] и при вводе имени файла символ выбирается на индикаторе с помощью [[кнопки выбора|кнопок выбора]] (влево, вверх, направо и вниз), потом вводится с помощью клавиши ввода. Т.к. [[R9029|регистр 9029]] позволяет опрашивать клавиши [[МК-152]], можно запрограммировать свои методы ввода символов, вплоть до принятых в мобильниках. Вопрос о возможности подключения к [[МК-152]] американской клавиатуры через «мышиный» переходник с PS/2 на COM-порт (или USB-шной через переходник с USB на COM), остаётся открытым. === Г10.Q Какие основные нововведения [[МК-152]]? === Г10.A Нововведений много. Но самые главные это: * возможность вывода русских и латинских букв (как заглавных, так и прописных), * [[графический экран]], * звуковой сигнал разной частоты и длительности ([[R9052]]), * часы реального времени ([[R9055]]-[[R9059]]) и два таймера ([[R9050]], [[R9051]]), * [[электронный диск]], * возможность подключать разнообразные внешние устройства (как уже имеющиеся или самодельные, так и специально выпущенные для [[МК-152]]), * значительно расширенные память программ и данных (для использования которых введены новые варианты старых команд), * возможность считывать данные из памяти программ ([[K ИПРГ]]) и даже декомпилировать коды операций ([[R9039]]), * использование букв A…F для отображения шестнадцатеричных чисел, возможность их ввода, * возможность динамически опрашивать клавиатуру ([[R9028]], [[R9029]]) и развитая система прерываний ([[R9130]]-[[R9158]]), * отображение не только кодов операций, но и их мнемоник, * возможность работы ЭКВМ в сети ([[R9059]]). === Г11.Q Что такое «латинская транскрипция» команды? === Г11.A [[МК-152]] предлагает два варианта мнемоники для каждой команды. [[Русская мнемоника|Одна из них традиционная]], идущая от [[Б3-34]] и других калькуляторов. [[Латинская мнемоника|Вторая]] разработана на основе латинского алфавита, советского ГОСТа и напоминает обозначения зарубежных калькуляторов. Программы в [[Латинская мнемоника|латинской транскрипции]] удобно вводить на клавиатуре компьютера, чтобы потом компилировать и через COM-порт передавать в [[МК-152]]. В самом [[МК-152]] поддерживается функция ([[R9039]]), переводящая код команды в латинскую транскрипцию. === Г12.Q Работает ли встроенный календарь по старому или новому стилю? === Г12.A Встроенный календарь запоминает номер столетия, но не переводит его автоматически. Без вмешательства пользователя за 31 декабря xx99 следует 1 января xx00 года. Любой год, делящийся на четыре (xx00, xx04, xx08,…) считается високосным и содержит 29 февраля. Для вычисления даты на [[МК-152]] существует программа «Календарь-2», в которой год перехода на новый стиль задаётся пользователем. === Г13.Q Какие внешние устройства могут подсоединяться к ЭКВМ? === Г13.A У [[МК-152]] имеются три разъёма, к которым можно подключать следующие устройства: * [[разъём ИПС|ИПС]] (COM, 9-pin, «AT») — для подключения последовательных устройств, работающих по протоколу RS-232C (скорость обмена 600…57600 бит/с). * [[ИПР]] (LPT, 25-pin, SPP/EPP) — для параллельных устройств, работающих по протоколам Centronics, EPP. * [[ВУ]] (25-pin) — внешние устройства, разработанные специально для [[МК-152]]. Сейчас выпускается электронный диск [[УЗВМК-1]]. Также инструкция обращает внимание на то, что звуковой сигнал выходит на этот разъём, а с помощью дополнительного устройства можно формировать сигналы интерфейса RS-485. [[МК-161]] имеет единственный [[разъём ВУ]], через который также доступны три линии порта ИПР и все сигналы порта ИПС. === Г14.Q Можно ли подключить [[МК-152]] к Фидо? === Г14.A У [[МК-152]] есть COM-порт, поэтому теоретически к нему можно подключить мышку или модем. Функции [[R9070|9070]]…[[R9089|9089]] предоставляют услуги, напоминающие услуги FOSSIL'а, что делает возможным написание терминальной программы для дозвона на BBS'ки или линукс-машины с mgetty. Дальнейшее зависит только от воображения и мастерства владельца [[МК-152]]. Для редактирования небольших писем с традиционной клавиатуры можно использовать встроенный [[Редактор текста]]. === Г15.Q Правда ли, что [[МК-152]] программируется на ассемблере? === Г15.A1 Нет. [[МК-152]] программируется на компактном входном языке, который является языком высокого уровня. Для работы программ, написанных на компактном языке, требуется транслятор (если точнее, то интерпретатор). Компактный язык отличается от ассемблеров, которые непосредственно управляют аппаратурой и меняются вместе с ней. На ассемблере написана [[встроенная программа]] — являющаяся, в том числе, интерпретатором компактного языка ПМК. Г15.A2 Предоставим слово разработчикам советских ПМК ([1], стр.15). Авторы приводят пример решения квадратного уравнения, подтверждающий «высокий уровень входных языков ПМК, позволяющих, как и алгоритмические языки ЭВМ других классов, практически непосредственно отображать словесно-формульные описания способов решения прикладных задач с выполнениями операций над представлениями чисел без их разбиения на части, что характерно для языков низшего уровня. В связи с сокращенными обозначениями операторов входные языки ПМК иногда ошибочно относят к языкам ассемблеров. Однако программы на таких языках образованы последовательностью слов, управляющих выполнением простейших операций над частями двоичных представлений чисел, и, например, программа решения квадратного уравнения на языках ассемблеров содержит несколько сотен команд. В дальнейшем для определённости процедурные языки программирования высокого уровня, подобные Фортрану или Бейсику, будем называть алгоритмическими, а входные языки традиционных ПМК — компактными.» Г15.A3 «Следует добавить, что компактные входные языки в связи с сокращёнными обозначениями операторов иногда ошибочно относят к языкам ассемблеров. Между тем уровень языка программирования определяется не символами алфавита, а сложностью операций, выполнением которых управляют отдельные операторы входного языка. Языки ассемблеров относятся к языкам программирования низшего уровня, и выполнение даже арифметической операции описывается на этих языках программами, содержащими десятки или даже сотни команд. Компактные входные языки ПМК относятся к языкам высокого уровня в соответствии с уровнем сложности операций, управляемых операторами этих языков.» ([8], стр. 301) === Г16.Q [[МК-152]] исполняет или эмулирует команды ПМК? === Г16.A Исполняет — точно в том же смысле, в котором эти команды работали на ПМК «расширяющегося ряда» ([[Б3-34]]…[[МК-52]]). Ранее ввод и исполнение команд ПМК осуществлялся с помощью операционной системы, написанной для микроЭВМ серии К745ИК13. Операционная система ПМК состояла из мониторной программы, программы лексического разбора, драйверов пульта управления и индикаторного устройства (с программой формата выводов), программ анализа ошибочных ситуаций, обеспечения протокола связи, редактирования и интерпретации кодов операторов ([1], стр.25, 129). Точно также ввод и исполнение команд в [[МК-152]] осуществляется с помощью встроенной программы. Просто написана она на входном языке [[Микроконтроллер|однокристальной микроЭВМ семейства МК51 (iMCS-51)]], а не для набора микроЭВМ серии К745ИК13. Если вы любите иностранную лексику, корректным термином будет не "эмуляция", а интерпретация. === Г17.Q Почему язык [[МК-152]] основан на языке ПМК? Не проще ли заимствовать «продвинутые» языки зарубежных калькуляторов; шпарить прямо в кодах; реализовать Форт, Бейсик, Лисп, Питон, Сумкинс++? === Г17.A Компактной язык ПМК был удачной разработкой, позволяющей писать компактные и невероятно эффективные программы. В отличии от многословных Бейсиков и Питонов, он изначально проектировался для карманных и настольных калькуляторов, завоевал заслуженную популярность в РСФСР и других Республиках. Многие инженеры и любители уже владеют этим языком. Языку ПМК легко научиться, так как по нему было издано множество хороших книг и учебников. На этом языке было выпущено много библиотек программ. Будучи хорошо известным и чётко специфицированным стандартом, выдержавшим проверку временем, язык ПМК может использоваться при написании диссертаций, публикации научных статей и написании других отечественных программ, рассчитанных на долгую жизнь. От добра добра не ищут — тем более, что зарубежные фирмы вполне справляются с выпуском калькуляторов на собственных языках. Что же касается машинного кода, то программы на нём занимают значительно больше места, а написание их более трудоёмко. Компактный язык и был разработан для того, чтобы избавить инженеров от программирования на ассемблере микроконтроллеров. Вспомним, что основной задачей любого калькулятора является произвести расчёт, а программируемый калькулятор позволяет запомнить нажатия клавиш и повторить этот расчёт для меняющихся входных данных. === Г18.Q Какие новые программы уже написаны для [[МК-152]]? === Г18.A Многие новые программы собраны на сайте производителя. Среди первых из них были: * «Аквариум» — решение простенькой задачи из учебника Макаровой; * «Решение квадратного уравнения» — более сложная учебная программа, традиционная для ПМК; * «Модель светофора» — пример разработки устройства и управляющей программы; * Математическая программа «График функции y=f(x)» — как чертить графики на [[МК-152]]; * «Статистика» — статистическая обработка данных на [[МК-152]]; * «Поздравительная открытка» — изобразительные возможности и вывод текста в графическом режиме [[МК-152]]; * Тестовая программа «Звездное небо» — демонстрирует быстродействие графической системы [[МК-152]]; * Игра «Питон» — динамическая графика, пример опроса клавиатуры; * «Метроном» — демонстрация работы со звуком; * «Контрольная сумма» — служебная программа. Некоторые из программ, написанных владельцами ЭКВМ, опубликованы в Сети. Среди первых из них были: * Программа «Гаусс» для численного интегрирования; * Программа «Котес-точность» для численного интегрирования с заданной точностью; * Разложение на простые множители; * Количество сочетаний C(n,k); * Сервисная программа «Hyp» для вычисления гиперболических и обратных гиперболических функций; * Возведение комплексного числа в комплексную степень; * Арифметическая и геометрическая прогрессии: суммы; * Игра Теннис; * Программа-читалка, хранящая тексты в электронном блокноте ЭКВМ; * Таблица ASCII; * Демо-программы «Падающие линии» и «Падающие точки»; * Расчёт дифракционного предела объектива. Выкладывая свои программы самостоятельно или на сайте «СЕМИКО», вы помогаете сообществу любителей ЭКВМ и выигрываете от аналогичных поступков других владельцев.
Описание изменений:
Пожалуйста, учтите, что любой ваш вклад в проект «ПМК вики» может быть отредактирован или удалён другими участниками. Если вы не хотите, чтобы кто-либо изменял ваши тексты, не помещайте их сюда.
Вы также подтверждаете, что являетесь автором вносимых дополнений, или скопировали их из источника, допускающего свободное распространение и изменение своего содержимого (см.
Pmkwiki:Авторские права
).
НЕ РАЗМЕЩАЙТЕ БЕЗ РАЗРЕШЕНИЯ ОХРАНЯЕМЫЕ АВТОРСКИМ ПРАВОМ МАТЕРИАЛЫ!
В целях защиты вики от автоматического спама в правках просим вас решить следующую каптчу:
Отменить
Справка по редактированию
(в новом окне)
Навигация
Персональные инструменты
Вы не представились системе
Обсуждение
Вклад
Создать учётную запись
Войти
Пространства имён
Статья
Обсуждение
русский
Просмотры
Читать
Править
История
Ещё
Поиск
Навигация
Заглавная страница
Свежие правки
Случайная страница
Справка по MediaWiki
Инструменты
Ссылки сюда
Связанные правки
Служебные страницы
Сведения о странице