"Роберт Джордайн. Справочное пособие программиста - 2 (ассемблер, операционная система MS DOS)" - читать интересную книгу автора

мендует программировать на этом уровне (из соображений, что такая
программа может не работать на последующих модификациях ЭВМ),
снова и снова обнаруживаются возможности машины, которые невоз-
можно реализовать другим способом.
Не все задачи показаны на всех трех уровнях. Решение некоторых
просто невозможно на Бейсике. Для решения других не предусмотрено
средств операционной системы. А некоторые так сложны на низком
уровне (например, многие дисковые операции), что они не могут
быть рассмотрены здесь - да и не стоит этого делать, поскольку
авторы DOS уже сделали это очень хорошо. Однако в большинстве
случаев показаны все три уровня. Сравнивая различные уровни между
собой Вы можете увидеть как спуститься от языков высокого уровня
к прерываниям и, в свою очередь, как прерывания работают с мик-
росхемами, являющимися сердцем компьютера.
Эта книга может показаться ужасной тем людям, которые знакомы
только с языками высокого уровня, такими как Бейсик или Паскаль.
Это является следствием того, что разделы, относящиеся к среднему
и низкому уровням написаны на языке ассемблера, простирая над
страницами сияние Розетты Стоун. Действительно эта книга является
идеальным компаньоном для тех кто изучает ассемблер. Но не думай-
те, что Вам нужна только треть книги если Вы не знаете ассемблера
и не собираетесь изучать его. Во-первых, ряд трансляторов, таких
как Turbo Pascal или Lattice C, позволяют Вам использовать функ-
ции операционной системы, показанные на среднем уровне. Кроме
того, многие из процедур низкого уровня могут быть на самом деле
реализованы на языках высокого уровня. Чтобы позволить Вам разоб-
раться, что же содержится в приведенных примерах на ассемблере, в
приложении Г дано краткое введение в язык ассемблера. Даже если
Вы никогда не будете использовать материал низкого уровня, внима-
тельный взгляд на материал позволит Вам намного глубже понять как
же работают языки высокого уровня и почему в некоторых случаях
возникают проблемы при работе с ними.
Практически каждый подраздел содержит образец кода. Часто это
всего лишь несколько тривиальных строк. Иногда приводятся явные
наметки для реализации сложных процедур. Очень редко встречаются
самостоятельные программы. Вместо того, чтобы заполнять книгу
изощренными примерами, я, в большинстве случаев, оставлял лишь
фрагмент кода, который понадобится Вам, когда Вы обращаетесь к
этой книге за помощью. Ни в коей мере каждый пример не претендует
на самое красивое решение проблемы. Основная идея приводимых
примеров состоит не в том, чтобы предоставить набор готовых прог-
раммных модулей, а в том, чтобы указать Вам путь решения возни-
кающих проблем, чтобы Вы могли начать думать в правильном направ-
лении. Но если Вы хотите, то Вы можете прямо включать приведенные
образцы в программы в качестве функциональной отправной точки и
затем дорабатывать их до кондиций, удовлетворяющих Вашему эстети-
ческому вкусу. Поскольку все примеры были проверены, они могут
служить как источник ссылок для избежания действительно идиотских
ошибок, которые имеют тенденцию накапливаться после того, как
долгие часы программирования понизят Ваш интеллект практически до