Ресурсы УКНЦ/Предисловие

Материал из Emuverse

Предисловие 0,

написанное явно не программистом.

— Ох, ну ни фига ж себе!..
— А ты как думал…
(из диалога человека с компьютером)

Дорогой читатель!
Открыв книгу на этой странице, вы вряд ли узнаете:

  • зачем эта книга;
  • о чем эта книга;
  • для кого эта книга;
  • как этой книгой удобнее всего пользоваться.

Поэтому можете сразу переходить к Предисловию 1.

Широко известно, что человек изобрел компьютер (а не наоборот).
Эта долгая история мало похожа на сотворение человека. Мало кто ее помнит. До нас дошли лишь сведения, что компьютеры изобретались тысячи раз на протяжении всей истории человечества. Любопытное совпадение — их изобретали каждый раз очень ленивые люди. Лень успешно прошла сквозь столетия, а технология 19—20 веков (вероятно, их рубежа) позволила создать такую вещь, как УКНЦ (которую Вы, вероятно, где-то уже видели).
Все знают, что с компьютером можно общаться.
Это так называемое общение Вам опишет теперь любой школьник. Все очень просто. Человек жмет на кнопки, а компьютер делает все, что захочет. Желания человека и компьютера, в принципе, совпадать не обязаны. Любопытно, что общение человека с компьютером не проходит бесследно ни для человека, ни для компьютера.
Многие знают, как надо общаться с компьютером.
Иными словами, имеются люди, которые знают, на какие кнопки им следует жать, чтобы выполнить те или иные желания компьютера.
Говорят, есть люди, которые знают, как заставить компьютер выполнять их желания.
Их еще называют программистами. Они же, в свою очередь, утверждают, что компьютер делает только то, что приказывает ему человек. Конечно, этому бреду не верит ни один здравомыслящий человек (если он сам не программист).
Посудите сами. Предположим Вы решили поиграть в TETRIS. Что вы набираете на клавиатуре? Конечно же, "Давай поиграем в TETRIS !" <ВК>. А что нам выдает машина?!
Но программисты упорствуют и стоят на своем. В их туманных и запутанных рассуждениях мелькают всяческие хитрые словечки. Наиболее часто мелькает нерусское слово ИНТЕРФЕЙС, иногда вместе с русским словом ДРУЖЕСТВЕННЫЙ.
Что такое дружественный интерфейс?
Да ничего сложного — не моргнув глазом, говорят программисты. Предположим, у Вас есть компьютер. Скорее всего, к нему есть программы. Под влиянием этих программ компьютер хочет что-нибудь сделать (а иногда даже может). Так вот, если он дает Вам понять, что он хочет от Вас, и дает Вам возможность в приятной и удобной форме (для Вас) исполнять его желания, то это и следует считать дружественным интерфейсом.
Бывает, люди даже не догадываются, что исполняют прихоти компьютера.
Они думают, что все как раз наоборот, то есть компьютер горит желанием им угодить. Это тоже одно из проявлений дружественного интерфейса. После общения с такими программами Вы можете воображать о себе все что угодно.
Другое дело системные программисты.
Они-то знают, в чем дело. Отсюда и понурый вид, отсюда и тоска во взоре.
Раз создав компьютер, человек становится его рабом. Написав свою первую программу, что-то вроде:
10 INPUT "Введите A";A
20 INPUT "Введите B";B
30 ? "A+B=";A+B,
он вряд ли остановится на достигнутом, ведь программирование подобно наркотику: чем больше пишешь программ, тем больше они становятся.
В конце концов Вы понимаете, что Бейсик Вам уже тесен, и переходите на более серьезный язык. Ну, а если Вы работаете на УКНЦ, то путь от Бейсика до Ассемблера Вы совершите молниеносно. Паскаль и Си вряд ли Вас задержат.
И тут Вы обнаруживаете, что компьютер — штука куда более сложная, чем та, за которую он себя выдает. Особенно это относится опять-таки к УКНЦ. Чтобы работать на ней в Ассемблере (на что не каждый способен), мало знать сам язык. Даже мало им владеть. Надо знать саму машину.

Поскольку Вы все-таки дочитали до этого места, нет ничего полезнее теперь, чем продолжить чтение.

Предисловие 1.

Не прибегай ни к чьей помощи.
Приходи не спеша, с сознанием
собственного достоинства.
А. Кнышев.

Открыв книгу на этой странице, Вы наверняка узнаете:

  • Зачем эта книга
  • О чем эта книга
  • Для кого эта книга
  • Как этой книгой пользоваться.

Литература бывает содержательной и поучительной. Та, что прилагается к вашей ЭВМ (или к комплексу ЭВМ), может быть содержательной, то есть в ней вполне может что-то содержаться. Но опыт показывает, что поучительной эту литературу можно назвать с большим натягом.

Есть книги, которые учат стилю программирования в Ассемблере. Но, как правило, они не учитывают специфику конкретно вашей машины. А учет ее так важен в создании хороших программ!

Вы, наверное, не станете отрицать, что, помимо хорошей идеи, программа должна иметь и хорошие средства общения с пользователем, иными словами, ДРУЖЕСТВЕННЫЙ ИНТЕРФЕЙС. В конце концов, она должна просто хорошо смотреться.

Поэтому эту книгу я полностью посвятил проблемам (а их немало) создания дружественного интерфейса в программах для УКНЦ. Дело в том, что многие программисты, пишущие программы для УК, лишь смутно догадываются о всех возможностях этой машины. «Электроника МС0511» богата не только аппаратными возможностями. Встроенное математическое (оно же программное) обеспечение при умелом использовании поистине способно облегчить труд программиста. И если архитектура ее более-менее представлена в «Техническом описании», то возможности использования аппаратуры машины с помощью стандартных подпрограмм, зашитых в ПЗУ, в полной мере еще нигде не были описаны.

Итак, книга посвящена аппаратно-программным средствам, которые «сидят» в архитектуре и ПЗУ. Их использование может снизить временные затраты написания программ, и, возможно, поднимет их уровень. Еще раз отмечу, что стиль программирования на языке Ассемблера преподаваться здесь не будет.

Основной адресат этой книги — программисты, как новички, так и матерые, те, кто осваивает, или уже освоил Ассемблер. Очень надеюсь, что она поможет Вам сделать Ваши программы короче и приятней. Также полезно прочесть некоторые главы обычным пользователям УК. Иногда просто полезно узнать, на что способна машина, на которой Вы работаете.

Книга построена по принципу «снизу-вверх». То есть сначала подробно описываются аппаратные средства УКНЦ, будь то экран или клавиатура, затем также детально рассматривается обслуживание их стандартным программным обеспечением, зашитым в СПЗУ, и затем идут рекомендации по использованию всех этих средств в программах.

Книга имеет два раздела: ЭКРАН и КЛАВИАТУРА. Разделы делятся на главы, а те, в свою очередь, на параграфы. Почти каждый параграф имеет краткое вступление, рассказывающее о том, что можно почерпнуть из данного параграфа, а также краткое резюме, обобщающее опорные мысли.

Информацию в книге можно условно разделить на учебную и справочную. Учебная преподносится в основной части книги. Здесь, помимо подробного изложения материала, присутствуют еще и практические упражнения, главным образом представляющие собой мини-программки, которые можно тут же за полминуты набить в машинных кодах, если есть под рукой машина. Вообще очень полезно при чтении этой книги иметь поблизости УКНЦ, причем никакого программного обеспечения не потребуется — все примеры основаны на встроенных ресурсах машины.

Справочная информация собрана, главным образом, в приложениях в виде таблиц.

Резюме предисловия.
  • Книга предназначена для облегчения программирования на УКНЦ.
  • Она написана про все встроенные и неиспользуемые возможности управления экраном и клавиатурой, предоставляемые пользователю аппаратно-программными средствами ЭВМ.
  • Книга рассчитана на людей, хотя бы отчасти знакомых с Ассемблером для PDP-11 (по крайней мере, с его основами).
  • Принцип «снизу-вверх», краткие резюме, использование блок-схем вместо ассемблерного текста, пояснительные рисунки, занимательные примеры и упражнения, а также кое-что еще — все это поможет Вам в чтении.