Главная » Просмотр файлов » М.Х. Джонс - Электроника практический курс

М.Х. Джонс - Электроника практический курс (1055364), страница 82

Файл №1055364 М.Х. Джонс - Электроника практический курс (М.Х. Джонс - Электроника практический курс) 82 страницаМ.Х. Джонс - Электроника практический курс (1055364) страница 822017-12-27СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 82)

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

Без операционной системы все эти действия, которые мы воспринимаем как само собой разумеющиеся, были бы невозможны и введение программы стало бы утомительной последовательностью управления многими переключателями для задания в двоичном виде всех кодов, адресов и данных. Большая часть экспериментов, о которых пойдет речь, рассчитана на применение микро- Нрограмнные средства 451 ЭВМ Асогп1ВВС на основе уже рассмотренного нами процессора 6502.

Хотя эти машины и выглядят устаревшими по сравнению с сегодняшними стандартами для персональных компьютеров и «Архимедов», все же микроЭВМ фирмы ВВС Мгсго еше используются в большинстве колледжей и школ в Великобритании. С точки зрения наших целей достоинство такой микро- ЭВМ заключается в легкости доступа к ее параллельным портам ввода и вывода. Идеальной для наших экспериментов является возможность программирования напрямую на языке ассемблера: такая возможность имеется также на теперешних «Архимедах», снабженных эмулятором ВВС М)его.

Разбираемые ниже примеры дешифрирования сигналов, возникаюших на шине, можно с пользой применить для организации ввода/вывода на персональных компьютерах фирмы 1ВМ и на совместимых с ними компьютерах. Если компьютер находится под управлением операционной системы, то это означает, что он, как правило, не начинает исполнять хранящуюся в памяти программу пользователя сразу после перезапуска, а подготавливает себя к приему с клавиатуры указаний о начале действий.

В Бейсике все, что требуется, это набрать слово «КЫ)Ч». Запустить программу, записанную в машинном коде, тоже очень легко; так же, как и во многих других компьютерах, на микроЭВМ ВВС Много требуется набрать команду САЬЬ адрес начала, в результате чего начнется исполнение программы, храняшейся в машинном коде, начиная с этого адреса. Довольно интересно, что в случае, когда начальный адрес указан неправильно и машине велено начать исполнять программу с места, где записано что-то еше, например, данные, у процессора нет возможности сообшить, что это не программа, и он начинает «вкалывать» в предположении, что встречаюшиеся числа являются кодами операций, давая лишенные какого-либо смысла результаты (обычно гаснет экран и нет отклика на нажатие клавиш).

Такой фатоланый сбой (аварийный отказ) в системе часто требует выключения питания, для того чтобы восстановить ситуацию, и хотя никакого вреда при этом машине не наносится, работа, на которую было потрачено много времени, может пропасть. Мудрый программист все . гда записывает на диск резервную копию введенной программы перед тем, как попытаться ее запустить. 14.74 Непосредственный ввод в машинном коде и запуск Нашу простую программу сложения из табл. 14.2, написанную в машинном коде, можно ввести прямо в память с помошью операций РОКЕ языка Бейсик (в случае микроЭВМ ВВС Мгсго этой команде эквивалентна инструкция?адрес ). Хотя зто и нудное занятие, но оно дает возможность почувствовать работу микропроцессора в вашем компьютере.

Чтобы испытать программу сложения, написанную в машинном коде, введите следующие строки в микроЭВМ ВВС М(сто; строки нумеровать не нужно: ?Й70 = йА5 452 МикроЭВМ и их лримененил ?Й?1 = дг80 ?сг72 = сг18 ?аг73 = аг65 ?й?4 = ег81 ?дг75 = аг85 ?й76 = й82 '.й?7 = аг60 Введя программу, мы должны записать два числа, которые хотим сложить, в зарезервированные нами для этих целей ячейки с адресами аг80 и аг81 соответственно. Эти числа могут иметь любое значение от 0 до 255 (от аг00 до есгЕР) и могут быть десятичными или шестнадцатеричными.

Например, если наши числа 13 и 19, то следует ввести ?й80 = 13 или в шестнадцатеричной записи?Вс80 = ась) ?й81 = 19 или в шестнадцатеричной записи?й81 = дг13 Чтобы запустить нашу простенькую программу, мы воспользуемся операционной системой, которая воспринимает инструкции Бейсика: САУЛ. аг70 Эта инструкция поместит в программный счетчик адрес аг70 и начнет исполнение с этого места в сторону ббльших адресов. Наша программа будет выполнена за несколько микросекунл, однако мы не увидим ответ на экране.

Это произойдет потому, что результат останется в ячейке памяти с адресом аг82, куда мы велели процессору поместить его. Команда Бейсика РЕЕК адрес (эквивалентна ?адрес на микроЭВМ ВВС М)его) предоставляет прямой доступ к содержимому ячейки, так что мы можем увнаеть наш результат, набрав РК1ХТ?й82 Компьютер, после нажатия сгегцгп>, откликнется выводом на экран содержимого ячейки с адресом аг82, которое в нашем случае есть сумма 13 и 19, то есть 32. Для получения ответа в шестнадцатеричной форме нужно набрать РК1ХТ ?аг82 На экране появится ответ: 20.

14. 7. 5 Язык ассемблера Введенную в компьютер программу в машинном коде, лишенную пояснительных замечаний, сделанных ранее, фактически невозможно понять. Программные средства 453 Табл. 14.3 Код операции Операнд Комментарий .АРРЕК 1.РА / метка, задающая начало подпрограммы ВОХОНЕ / загрузить первое число в аккумулятор из ячейки памяти ВОХОНЕ / сбросить признак переноса в ноль ВОХТУУО / прибавить второе число из ячейки памяти ВОХТ%0 к содержимому аккумулятора ЯЗМВОХ / сохранить эту сумму чисел в ячейке памяти 5ЫМВОХ / конец этой части программы СЬС АРС 5ТА КТЯ Двоичные коды, используемые процессором, очень далеки от человеческого языка, и любому программисту трудно и утомительно работать с машинным кодом. Эта проблема решается с помощью языка ассемблера, в котором машинный код преобразуется в буквенные аббревиатуры, выбранные так, чтобы напоминать программисту функцию каждой команды.

Например, наша команда «загрузить аккумулятор» (ЬоаР Ассшпц1агог), которая в машинном коде записывается как яА5, преобразуется в ЬРА, что является разумной аббревиатурой данной функции. Имея в виду, что запись на языке ассемблера осушествляет напоминание, ее называют мнемонической. На языке ассемблера так же легко обрашаться и с адресами ячеек памяти: программист может называть их, указывая метки, вместо того, чтобы обозначать их шестнадцатеричными числами. Поскольку положение каждой метки относительно начала программы является вполне определенным, абсолютные значения адресов ячеек, занимаемых программой, более не сушественны, и программа становится перемещаемой — это важное свойство для подпрограмм, которые могли бы применяться в множестве различных программ.

Метки могут применяться не только для обозначения операндов, но также и в качестве заголовков отдельных частей программы. Такое присвоение меток полезно не только лля программиста, чтобы напоминать ему, что делает его программа, но также и в качестве разметки„позволяюшей осуществлять ветвление и переходы в самой программе. Например, команда условного перехода ВСС БМАЬЬ отправит процессор к подпрограмме, помеченной меткой БМАЬЬ, если признак переноса в слове состояния окажется равным нулю.

Третье полезное свойство языка ассемблера состоит в том, что программист имеет возможность вносить замечания и пояснительный комментарий в каждую строку программы. Вставление такого рода документации является жизненно необходимым для любой программы. Без нее даже сам составитель программы может забьпь доводы и аргументацию в пользу различных подпрограмм и структур. Ценность языка ассемблера иллюстрируется на примере программы, приведенной в табл. 14.3, где наша программа сложения, написанная ранее в машинном коде, теперь выражена посредством мнемоники и меток. 454 МикроЭВМ и их нрименения Чтобы запустить программу, написанную на языке ассемблера, необходимо сначала запустить «дешифруюшее» программное средство, называемое ассемблером, для преобразования мнемоники и меток в двоичный машинный код и удаления полей комментария.

Затем оттранслированная программа в машинном коде запускается обычной инструкцией САУЛ, в которой теперь удобно сослаться на начальную метку программы, а именно: САУЛ АРРЕК. МикроЭВМ ВВС М!сто содержит полезный ассемблер как часть встроенной операционной системы. В частности, ассемблер хорошо сопрягается со средствами языка Бейсик, так что части программы, написанные на языке ассемблера, могут быть вставлены в программу, написанную на Бейсике, только они должны быть заключены в пару квадратных скобок: [ [.

Обычно участку программы на языке ассемблера предшествуют одна или две строки на Бейсике. Прежде всего необходимо сообщить программному счетчику, откуда начинать, для чего переменной Р% присваивается номер ячейки памяти; затем мы определяем ячейки памяти для используемых меток.

Характеристики

Тип файла
DJVU-файл
Размер
4,65 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
Почему делать на заказ в разы дороже, чем купить готовую учебную работу на СтудИзбе? Наши учебные работы продаются каждый год, тогда как большинство заказов выполняются с нуля. Найдите подходящий учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6447
Авторов
на СтудИзбе
306
Средний доход
с одного платного файла
Обучение Подробнее