Злобин В. К-, Григорьев В. Л. 58 Программирование арифметических операций в микропроцессорах: Учеб. пособие для технических вузов.— М.: Высш. шк., 1991. —303 с.: ил. ISBN 5-06-002052-5 Приведены форматы числовых данных для современных микропроцессоров и профессиональных персональных компьютеров. Рассмотрены алгоритмы выполнения арифметических операций и особенности их программной реализации в микропроцессорных системах.
Предисловие
Подготовка специалистов по вычислительной технике, в общем плане — по электронной обработке данных, немыслима без углубленного изучения микропроцессорной техники. Микропроцессорная техника является основой для компьютеризации общества. Благодаря микропроцессорам родились удивительные технические творения наших дней — профессиональные персональные компьютеры, возможности которых близки, а иногда и превосходят возможности больших и средних компьютеров недавнего прошлого. Внедрение персональных компьютеров в сферу инженерной деятельности повысит производительность труда в несколько раз; станет более дешевой, массовой и надежной, а ее использование будет экономически эффективным практически во всех областях народного хозяйства.
В нашей стране в развитии микропроцессорной техники объективно сложились два основных направления. Первое из них образуют микропроцессоры и микрокомпьютеры, имеющие систему команд СМ ЭВМ. Второе направление составляют однокристальные микропроцессоры КР580ИК80, К1810ВМ86 и арифметический (математический) сопроцессор К1810ВМ87. Литературы по этому направлению издано недостаточно. Изучение программирования для микропроцессора К1810ВМ86 и сопроцессора К1810ВМ87 приобретает особое значение, так как они применяются в профессиональных персональных компьютерах ЕС1840/1/2, Искра-1030 и Псйрон-И9.
Пособие состоит из четырех глав. Содержание гл. 1 соответствует разделу по арифметическим основам компьютеров. Наибольший интерес представляет § 1.5, в котором рассматривается принятый за рубежом стандарт на арифметику с плавающей точкой, и § 1.6, где показаны особенности программирования арифметических операций. Гл. 2—4 построены по единому принципу: краткая общая характеристика микропроцессора, его программная (регистровая) модель, система команд (с более подробным изложением арифметических команд) и заключительный параграф по алгоритмам и программам вычислительных задач. Завершают каждую главу контрольные вопросы и упражнения, помогающие закрепить изучаемый материал.
Авторы выражают благодарность сотрудникам кафедры вычислительной техники Московского института электронной техники — зав. кафедрой чл.-кор. Л. Н. Преснухину, проф. Б. М. Кагану за РЯД ценных замечаний, способствовавших улучшению материала книги, и инж. О. Ф. Куприяновой за помощь в подготовке рукописи.
Свои замечания и пожелания о книге направлять по адресу: '01430, Москва, ГСП-4, Неглинная ул., д. 29/14, издательство «Выс-шая школа».
Авторы
Введение
При подготовке данного учебного пособия авторы поставили цель познакомить студентов вузов, специализирующихся в области электронной обработки данных, с основами программирования арифметических операций в современных однокристальных микропроцессорах. Достижение этой цели и желание сделать пособие автономным потребовали кратко изложить двоичную систему счисления, двоичную арифметику, форматы машинных чисел и особенности производства арифметических операций в микропроцессорах с ограниченной длиной слова. Этот материал представлен в первой главе пособия. Остальные три главы содержат конкретные алгоритмы и программы арифметических операций для наиболее распространенных сейчас микропроцессоров К.Р580ИК80 и К1810ВМ86, а также арифметического сопроцессора К1810ВМ87. Наряду с алгоритмами и программами в этих главах имеются необходимые сведения о самих микропроцессорах: краткая техническая характеристика, программная модель, режимы адресации и система команд.
Эволюция микропроцессоров прошла этапы от сравнительно слабого по вычислительным возможностям 8-битного микропроцессора КР580ИК80 к гораздо более мощному 16-битному микропроцессору К1810ВМ86 и далее к арифметическому сопроцессору К.1810ВМ87, ориентированному исключительно на инженерно-технические и научные расчеты. Сопроцессор обеспечивает диапазон и точность представления чисел, характерные для средних и больших компьютеров недавнего прошлого, и имеет сравнимую с ними производительность. Благодаря ему сфера применений микропроцессоров будет значительно расширена, а это потребует увеличения числа специалистов, ориентирующихся в численных расчетах.
Программы арифметических операций сопровождается графическими иллюстрациями и даются на языке Ассемблер. Выбор этого языка объясняется несколькими причинами, в частности эффективностью ассемблерных программ, наибольшей близостью языка Ассемблера к архитектуре микропроцессора и доступностью для программиста всех ресурсов микропроцессора. Изучение программ на языке Ассемблер поможет студентам уяснить реализацию арифметических операторов на языках программирования высокого уровня и освоить некоторые общие приемы программирования.
Рассмотренные в данном учебном пособии вопросы программирования арифметических операций охватывают наиболее распространенные 8- и 16-битные однокристальные микропроцессоры и арифметический сопроцессор. По-видимому, необходимость знания точных численных расчетов в настоящее время будет все более настоятельной благодаря повышению вычислительной мощности микропроцессоров и реализуемых на их основе качественно новых систем. В ближайшем будущем появятся 32-битные микропроцессоры и совместимые с ними арифметические сопроцессоры. Наибольший интерес для студентов представляет материал по арифметическому сопроцессору К.1810ВМ87 из-за недостатка посвященной ему технической литературы и архитектурной совместимости его с будущими разработками.
Изучение схем алгоритмов и программ арифметических операций поможет студентам глубже разобраться в особенностях программирования микропроцессоров. Используемые в них приемы программирования применимы к решению других практических задач.
ОГЛАВЛЕНИЕ
Предисловие.............................. 3
Введение................................ 4
Глава 1. Форматы чисел и основы арифметических операций...... g
1.1. Биты, байты, слова..................... g
1.2. Форматы целых двоичных чисел............... ]2
1.3. Десятичные числа...................... 22
1.4. Форматы чисел с плавающей точкой............. 24
1.5. Стандарт на арифметику с плавающей точкой........ 33
1.6. Особенности выполнения арифметических операций в микропроцессорах ........................... 34
1.6.1. Операции над целыми числами............... 35
1.6.2. Операции над числами с плавающей точкой......... 46
1.6.3. Операции над десятичными числами............. 51
Контрольные вопросы и упражнения............ 52
Глава 2. Арифметические операции в микропроцессоре КР580ИК80 ... 54
2.1. Общая характеристика микропроцессора........... 54
2.2. Программная модель микропроцессора............ 57
2.3. Система команд микропроцессора.............. 64
2.4. Алгоритмы и программы арифметических операций...... 73
2.4.1. Операции над двоичными целыми числами......... 75
2.4.2. Операции с десятичными числами.............. 101
2.4.3. Операции над числами с плавающей точкой........ 106
2.4.4. Вспомогательные программы................ 125
2.4.5. Преобразование чисел по методу сдвига и коррекции .... 134 Контрольные вопросы и упражнения............ 152
Глава 3. Арифметические операции в микропроцессоре К1810ВМ86 . . . 154
3.1. Общая характеристика микропроцессора............154
3.2. Программная модель микропроцессора............ 159
3.3. Система команд микропроцессора............• • 170
3.3.1. Команды передач данных................. '71
3.3.2. Арифметические команды.................. '**
3.3.3. Логические команды и команды сдвигов.......... 'jj.
3.3.4. Команды передачи управления............... •"•
3.3.5. Цепочечные команды.................... }~1
3.3.6. Команды управления микропроцессором........... |**1
3.3.7. Программная совместимость микропроцессоров К580 и К1810 ••*
3.4. Алгоритмы и программы арифметических операций...... |?2
3.4.1. Операци^ над двоичными целыми числами......... '.Jo
3.4.2. Операции с десятичными числами............. *Гд
3.4.3. Операции над» числами с плавающей точкой........ ^jg
3^4.4. Вспомогательные программы................ „vs
Контрольные вопросы и упражнения............
Глава 4. Арифметический сопроцессор KI810BM87............ 227
4.1. Особенности сопроцессорных конфигураций.......... 227
4.2. Внутренняя организация и программная модель сопроцессора 231
4.3. Форматы чисел....................... 235
4.4. Система команд сопроцессора................ 239
4.4.1. Команды передач данных.................. 241
4.4.2. Арифметические команды.................. 243
4.4.3. Команды сравнения..................... 248
4.4.4. Команды трансцендентных функций............. 249
4.4.5. Команды загрузки констант................. 252
4.4.6. Команды управления сопроцессором............. 253
4.5. Специальные числа и особые случаи............. 254
4.6. Алгоритмы и программы вычислительных задач....... 264
4.7. Особенности представления чисел в персональных компьютерах 280 Контрольные вопросы и упражнения............. 286
Приложение. Система команд арифметического сопроцессора К1810ВМ87 287
Заключение.............................. 298
Список литературы........................... 301

Hosted by uCoz