Добавить в избранноеСделать домашней
 

Ассемблер и программирование для IBM PC.

 

 

   ПРЕДИСЛОВИЕ


 

Появление микропроцессоров в 60-х годах cвязано с разработкой интегральных схем (ИС). Интегральные схемы объединяли себе различные электронные компоненты в единый элемент  на  силиконовом  "чипе". Разработчики установили этот крошечный чип в устройство, апоминающие сороконожку и включили его в функционирующие системы. В начале 70-х микрокомпьютеры на процессоре Intel 8008 возвестили о первом поколении микропроцессоров.  К 1974 году  оявилось второе поколение микропроцессоров oбщего назначения Intel 8080. Данный успех побудил другие фирмы к производству этих или аналогичных процессоров.  В 1978 году фирма Intel выпустила процессор третьего поколения - Intel 8086, который обеспечивал некоторую совместимость с 8080 и являлся значительным продвижением вперед в данной области. Для поддержки более простых устройств и обеспечения совместимости с устройствами ввода/вывода того времени Intel разработал разновидность процессора 8086 – процессор 8088, который в 1981 году был выбран фирмой iВМ для ее персональных компьютеров.  Более развитой версией процессора 8088 является процесcор 80188, а для процессора 8086 - процессоры 80186, 80286 и 80386, которые обеспечили дополнительные возможности и повыcили мощность вычислений. Микропроцессор 80286, установленный в компьютерах IBM AT появился в 1984 году. Все эти процессоры имеют отношение к развитой архитектуре процессоров фирмы Intel и обозначаются как iAPX 86, iAPX 88, iAPX 86, iAPX286 и iAPX386, где APX - Intel Advanced Processor Architecture.  Распространение микрокомпьютеров послужило  причиной  пеpесмотра отношения к языку ассемблера по двум основным причинам. Во-первых, программы, написанные на языке ассемблера, требуют значительно меньше памяти и времени выполнения. Во-вторых, знание языка ассемблера  и результирующего машинного кода дает понимание архитектуры машины, что вряд ли обеспечивается при работе на языке высокого уровня. Хотя большинство специалистов в области программного обеспечения ведут разработки на языках высокого уровня, таких как Паскаль или С, что проще при написании программ, наиболее мощное и эффективное программное обеспечение полностью или частично написано на языке ассемблера.  Языки высокого уровня были разработаны для того, чтобы избежать специальной технической особенности  конкретных  компьютеров.  Язык ассемблера, в свою очередь, разработан для конкретной специфики компьютера или точнее для специфики процессора. Следовательно, для того, чтобы написать программу на языке ассемблера для конкретного компьютера, следует знать его архитектуру и данная книга содержит весь необходимый базовый материал. Для работы кроме этого материала и оответствующих знаний необходимы следующее:

   - Доступ персональному компьютеру IBM PC или совместимому с ним

 c оперативной памятью - минимум 64К и одним дисководом. Лучше, но не обязательно, если будет дополнительная память и второй дисковод или винчестер.

   - Знакомство с руководством по IBM PC.

   - Дискета, содержащая транслятор  с  языка  ассемблера,

 предпочтительно, но не обязательно, последней версии.

   - Копию операционной системы PC-DOS или MS-DOS, лучше последней

 версии.

 Cледующее является не обязательным для данной темы:

   - Опыт программирования. Хотя эти знания могут помочь быстрее

 освоить некоторые идеи программирования, они не обязательны.

   - Хорошие знания в электронике или схемотехнике. Данная книга

 дает всю необходимую информацию об архитектуре PC, которая требуется

 для программирования на языке ассемблера.

 

 

   Операционные системы

  ----------------------

 Назначение операционной системы - позволить пользователю yправлять

работой на компьютере: вызывать для выполнения конкретные программы,

обеспечивать средства для сохранения данных (каталог), иметь доступ к

информации на диске.

 Основной операционной системой для PC и совместимых моделей является

MS-DOS фирмы Microsoft, известная как PC-DOS для IBM PC. Особенности

некоторых версий: 2.0 обеспечивает поддержку твердого диска (винчестера),

3.0 применяется в компьютерах AT,  4.0  обеспечивает  работу  в

многопользовательском режиме. Рассмотрение профессиональной операционной

системы UNIX и ее аналога для PC XENIX выходит за рамки данной книги.

 

 

  Подход к книге

  ----------------

 Данная книга преследует две цели: она является учебником, a так же

постоянным справочным пособием для работы. Чтобы наиболее эффективно

восполнить затраты на микрокомпьютер и программное обеспечение, необходимо

тщательно прорабатывать каждую главу и перечитывать материал, котоpый не

сразу ясен. Ключевые моменты находятся в примерах программ, их следует

преобразовать в выполнимые модули и выполнить  их.  Прорабатывайте

упражнения, приведенные в конце каждой главы.

 Первые восемь глав составляют базовый материал для данной книги и для

языка ассемблера. После этих глав можно продолжить с глав 9, 11, 12, 14,

15, 19, 20 или 21. Связанными являются главы с 8 по 10, 12 и 13, с 15 по

18, главы с 22 по 25 cодержат справочный материал.

 Когда вы завертшите работу с книгой, вы сможете:

 

   - понимать устpойство персонального компьютера;

   - понимать коды машинного языка и шестнадцатиричный формат;

   - понимать назначение отдельных шагов при ассемблировании,

 компановке и выполнении;

   - писать программы на языке ассемблера для управления экраном,

 арифметических действий, преобразования ASCII кодов в  двоичные

 форматы, табличного поиска и  сортировки,  дисковых  операций

 ввода/вывода;

   - выполнять трассировку при выполнении программы, как средство

 отладки;

   - писать собственные макрокоманды;

   - компановать вместе отдельные программы.

 

 Изучение языка ассемблера и создание работающих программ - это

захватывающий процесс. Затраченное время и усилия несомненно  будут

вознаграждены.

 

 

  Признательность автора

  ------------------------

 Автор благодарен за помощь и сотрудничество всем,  кто  внес

предложения и просматривал рукопись.

 

Оглавление

 

 
Web site engine code is Copyright © 2003 by LRCh.
All Rights Reserved.
Hosted by uCoz