Главная » Просмотр файлов » Д. Кнут - Искусство программирования том 1

Д. Кнут - Искусство программирования том 1 (1119450), страница 37

Файл №1119450 Д. Кнут - Искусство программирования том 1 (Д. Кнут - Искусство программирования том 1) 37 страницаД. Кнут - Искусство программирования том 1 (1119450) страница 372019-05-09СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

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

Поэтому до момента завершения передачи информации программа не должна обращаться к этой информации в памяти. Не следует пытаться прочитать с магнитной ленты любой блок, следующий за блоком, который был записан последним. ° ООТ (оитрпт — вывод). С = 37: Г = номер устройства. Эта команда реализует передачу информации из ячеек памяти, начиная г ячейки М, на заданное устройство вывода. Если сначала устройство не было готово, то компьютер будет ждать его готовности.

Время, в течение которого будет длиться передача информации, начатая по этой комацде, зависит от скорости устройства вывода. Поэтому до момента завершения передачи информации программа не должна производить изменения в соответствующих ячейках памяти. ° 10С (шрпС-опсрп( соп(го! †управлен вводом-выводом). С = 35; Р = номер устройства. В случае необходимости компьютер ожидает, пока освободится заданное устройство.

Затем выполняется управляющая команда, которая зависит от типа применяемого устройства. В этой книге будут использоваться следующие примеры. Магнитная лента. Если М = О, то лента перематывается в начало. Если М ( О, то лента перематываетгя на — М блоков (т. е. на М блоков назад) или в начало, в зависимости от того, что произойдет раньше. Если М > О, то лента перематывается вперед; перематывая ленту вперед, нельзя заходить дальше блока, который был записан последним. Например, последовательность команд "01)Т 1000(З): 10С -1(3); 1И 2000(3)" записывает сто слов на ленту. 3, а затем снова считывает их. Если надежность ленты не ставится под сомнение, то использование последних двух команд этой последовательности представляет собой медленный способ перемещения слов 1000- 1099 в ячейки 2000 — 2099. Последовательность команд "СОТ 1000(3); 10С +1(3)" некорректна.

Диск или барабан. М должно быть равно нулю. В результате устройство позиционируется в соответствии с содержимым гХ, чтобы следующая операция 1И или ООТ на этом устройстве выполнялась быстрее в случае, если используется то же значение гХ. Првиюер. М должно быть равно нулю.

Команда "10С 0(18)" заставит принтер перейти к началу (т. е. к верху) следующей страницы. Перфолента. М должно быть равно нулю. Команда "10С О(20)" перематывает ленту в начало. ° )ИИО Ошпр гвалту — переход при готовности). С = 38; Р = номер устройства. Переход происходит в случае, если заданное устройство готово, т. е. завершена предььзущая операция., инициированная командой 1И, ООТ или 10С. ° 1ВОЯ ()шпр Ьпву — переход при занятости). С = 34; Р = номер устройства. Антипод команды 1ННО: переход происходит, если заданное устройство не готово. Пример. Команда "1ВОЯ 1000(16)" из ячейки 1000 будет повторно выполняться до тех пор, пока устройство 1б не будет готово, Перечисленные выше простые команды исчерпывают набор команд ввода-вывода компьютера М1Х.

В этом компьютере нет индикаторов контроля ленты и т. д., служащих для предотвращения аварийных ситуаций на периферийных устройствах. Любая подобная ситуация (бумага застревает, устройство отключается, лента отсутствует и т. д.) приводит к тому, что устройство остается занятым, звенит звонок и опытный оператор устраняет проблемы вручную, выполння обычные процедуры обслуживания. О более сложных периферийных устройствах, которые являются более дорогими и более типичными представителями современного оборудования па сравнению с описанными здесь лентамн, барабанами и дисками с фиксированным размером блоков, пойдет речь в разделах 5.4.6 и 5.4.9.

Команды преобразования ° МОМ (соптег11о пшпепс — преобразовать в число). С = 5; Р = О. Эта команда используется для преобразования символьного кода в число. М игнорируется. Предполагается, что регистры А и Х содержат 10-байтовое число в символьном коде и команда НОМ заносит в гА полученное числовое значение (которое рассматривается как десятичное число). Содержимое гХ и знак гА не меняются. Байты 00, 10, 20, ЗО., 40, ... преобразуются в нулевые; в байты 01, 11, 21.... заноснтся цифра 1 и т. д.

Если происходит переполнение (что вполне возможно), сохраняется остаток по модулю Ьь, где 6 †разм байта. ° СНАЯ (соптегс 1о сЬагассегз †преобразова в символы). С = 5; Г = 1. Эта операция используется для преобразования машинного кода в символьный код, который воспринимается устройством вывода на перфокарты, ленту или на принтер. Значение из гА преобразуется в 10-байтовое десятичное число, которое заносится в регистры А и Х в символьном коде.

Знаки гА и гХ не меняются. Ы игнорируется. Примеры Регистр А Регистр Х Первоначальное содержимое МУМ О 1НСА 1 СНАВ О Время выполнения. Чтобы определить количественные характеристики эффективности программ для М1Х, для каждой его команды задано время выполнения, которое типично для компьютеров "урожая 1970 года". АОО, ЯОВ, все команды ЖОАО, все команды ЯТОВЕ (включая ЯТХ), все команды сдвига и все команды сравнения выполняются в течение двух тактов.

Для выполнения команды ХОЧЕ требуется один такт плюс еще два на каждое перемещаемое слово. Для каждой команды МШ., НОМ, СНАЯ требуется 10 тактов, а для 91Ч вЂ” 12. Время выполнения операций с плавающей точкой определяется в разделе 4.2,1. Для всех остальных операций необходим один такт плюс время, в течение которого компьютер может ожидать завершения выполнения команд 1Н, ООТ, 1ОС и Н1.Т. Таблица в аа ог оз оз аа оз ов от ов ав га ы и гз ы ы н ы гв ы зо ы зз зз ы и А В С 0 Е Р О Н 1 А 1 К Е Н М О Р О В Е П Я Т 0 03 10 00 01 3 02 3 Нет операции НОР(0) гАХ <- гА х Ч НШ. (О: 5) РИАЛ. (Б) гА в- гА — Ч ЯОВ(0:5) РВОВ(8) гА+- гА+ Ч АОО(0:й РАВО(Б) 11 3 08 3 09 3 10 3 гАв Ч ЕОА(0:5) г11 в- Ч 101(0:Б) г12 в- Ч 102(0:5) г]3 в- Ч Ы)3(0:5) 27 3 М(Р) в- гА ЯТА(0:й М(Р) в- г13 ЯТЗ(0:5) М(Р) в- г!1 ЯТ1(0:5) М(Р) в — г12 ЯТ2(0:5) 35 1+Т Упр.

устр, Р 34 Устр. Р занято? 1303(0) 10С(0) 40 1 43 41 1 гА:О, переход г13: О, переход г11: О, переход г12:О, переход )А (+] 13 (+] 11 (+] 32 (+] 51 1 48 49 1 50 1 гА +- [гА)? х М 1НСА(0) ВЕСА(1) ЕМТА(2) ЕННА(3) гИ+- [г13)? х М 1МСЗ(0) ОЕСЗ(1) ЕНТЗ(2) ЕММЗ(3) г12 в- [г12[? А.М 1МС2(0) ОЕС2(1) ЕМТ2(2) ЕНН2(3) г11 +- [г11)? х М 1301(0) ОЕС1(1) ЕНТ1(2) ЕММ1(З) 56 Ю С1+- ГА(Р): Ч СИРА(0:5) РСНР(5) С1 в — г12(Р): Ч СИР2(0:5) С1+- г13(Р) г Ч СИР 3 (О; 5) С1+- г11(Р): Ч СИР 1(0: 5) Общая форма записи: С вЂ” код операции, поле команды (5: 5) Р— уточн. кода опер., поле команды (4: 4) М вЂ” адрес команды после индексации Ч = М(Р) — содерлгнмое поля Р ячейки М ОР†символическ код операции (Р) †стандартн значение Р †вре выполнения; Т вЂ вре блокировки 16 3 гА в- -Ч ЕОАН(Овб) 32 3 М(Р) +- г) ЯТТ(0:2) 17 3 г11 в- -Ч ЕИМ(0: 5) ЗЗ 3 М(Р) +- О ЯТЗ (О: 5) 18 3 12 в- -Ч 1028(Ов5) 19 3 г]3 в- -Ч ЕОЗН(0:5) ы ж зг зз зо зо за зз зз за зз зв зт зв зо ао аз аз аз аа ьз ао ат аз ао зо ы зз зз за зз Ч М Х Т 2 0 1 2 3 4 5 б 7 8 9 ., ( ) + - о / Ф < ь 9 07 1+ ЮР 04 05 10 06 Я Переиестнть Р слов нз М в г11 МОЧЕ(1) 12 13 Я 14 Я 15 г14+- Ч 1.04(0:5) гХ а- Ч СОХ(0:5) 23 3 г16 а- Ч Ьбб(баб) 20 г14 +- — Ч 5049(0:5) гХ +- -Ч 1.0ХМ(0:5) г!5 — -Ч 1059(0:5) г16 а- -Ч 5069(0:5) 31 Е 30 Е М(Р) а- гХ ЯТХ(0:5) 39 Устр.

Р готово? )ЕЕО(0) Ввод с устр, Р Вывод на устр. Р ООТ(0) Переходы 1ИР (0) 131(1), 10Ч(2) 5МОЧ(3) а также [*] ниже 1М(0) 47 1 44 1 46 45 1 г!4: О, переход гХ; О, переход г15: О, переход г16: О, переход 14 [+] 15 [+] 16[+] 53 54 1 г14 а — [г!4)? ~ М 1МС4(0) ОЕС4(1) ЕМТ4(2) ЕММ4(3) гХ а- [гх]? ~ М 1МСХ(0) ОЕСХ(1) ЕМТХ(2) ЕММХ(3) г!б а- ]г!6)? ~ М 1МСб(0) ОЕС6(1) ЕМТб(2) ЕММ6(3) г15 +- [г15]? ~ М 1МС5(0) ОЕС5(1) ЕМТ5(2) ЕММ5(3) 60 3 63 61 С1 а- г14(Р):Ч СМР4(0:5) С[+- гХ(Р): Ч СИРХ(0:5) С1+- г!6(Р]: У СИРб(0:5) С1+- г!5(Р]: Ч СИР5(0:5) гА †регис А гХ вЂ регис Х гАХ вЂ”.Регистры А и Х вместе г1з — индексный регистр 1, 1 ц а к б гд — регистр 1 С! — индикатор сравнения гА +- гАХ(Ч гХ а- остаток ОХЧ(0:5) 901У(6) М(Р] а- г14 374(0:5) 36 1+Т Специальные МОМ(0) СНАМ(1) НП(2) г15 +- Ч 505(0:5) 21 Е М(Р) а — г15 ЯТЯ(0:5) 37 14Т Сдвиг на М байт ЯЕА(0) ЯЕА(1) ЯЕАХ(2) ЯМАХ(3) 31.С(4) ЯКС(5) М(Р) а- г16 ЯТб(0:5) 38 1 [о]: Л.

(4) )Е(5) 1С(б) )СЕ(7) 1МЕ(8) Л.Е(9) [+] з < М(0) 2(1) > Р(2) > ММ(3) ф МЕ(4) < МРПП В частности, заметим что ЕИТА выполняется в течение одной единицы времени, а ЬОА — в течение двух. Время выполнения команд легко запомнить, потому что, за исключением команд сдвигу, преобразования, ИОЬ и 01Ч, число единиц времени равно числу обращений к оперативной памяти (включая обращение к самой команде). Основная единица измерения времени ИТХ вЂ” это относительная мера, которую мы просто обозначим через и. Ее можно считать равной, скажем, 10 мкс (для сравнительно недорогого компьютера) илн 10 нс (для достаточно дорогого).

Пример. Последовательность команд ЕРА 1000; 1ИСА 1; БТА 1000 выполняется ровно 5и. Мой взоа пРоник в ее глубины— Туда, где бьется пульс машины. — ВИЛЬЯМ ВОРДСВОРС (ЧЧШШАМ ЧЧОЯОБЧЧОЯТН), зпе чуаз а Рпапгогп ог г)еддпг (1304) Резюме. Итак, мы обсудили все характеристики И1Х, за исключением его икнопки 00к (пуск), о которой пойдет речь в упр. 26. Хотя в компьютере И1Х приблизительно 150 различных операций, они вписываются в несколько простых схем и поэтому легко запоминаются.

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

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

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