Для студентов МГУ им. Ломоносова по предмету Архитектура ЭВМОтветы к экзаменуОтветы к экзамену 2019-04-28СтудИзба

Ответы: Ответы к экзамену

Описание

Описание файла отсутствует

Характеристики ответов (шпаргалок)

Учебное заведение
Семестр
Просмотров
116
Скачиваний
6
Размер
6,27 Mb

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

2002 вариант2 мои реш

1. а)Машинное слово-содержимое ячейки.

б)Непосредственный операнд- операнд, занчение которого я вно указано в команде.

в)Дальний переход-переход из одного сегмента в другой.

2. 1 2 3 4 5 6

1:а

2:б а

3:в б а2

4: в - а2

5: - a

6: б2 а5

7: в2 б3

8: в4 б

9: в б6

10: в7

3. CF=1 SF=1 OF=0

4.mov bl,t

mov bh,0

mov al,t[bx]

cmp al,'S'

jne l

dec t

l:

5.mov bp,sp

mov ax,a

mov es,ax

mov cx, 1001h

sub cx,sp

mov bx,0

l:mov dl, [bp]

mov es:[bx],dl

inc bx

inc bp

loop l

6.jdif macro lv,m]

irp p,<lv>

if type p equ byte

cmp al,p

je j1

endif

endm

jmp m

j1:

endm

8. public q

code segment

assume cs:code

q proc far

push sp

push bp

mov bp,sp

mov bx,[bp+6]

mov di,[bp+8]

mov dx,[bx+di]

mov al,[dx]

mov ah,103

mul ah

mov [bx],al

pop bp

pop sp

ret 4

q endp

code ends

end

Вариант 2003г

1.

Экзамен 2002 Вариант 1

1. Дать определения понятий:

а) Абсолютный адрес

б) Неявный операнд

в) Близкий переход

2. В ЭВМ типа УМ-2 используется расслоение памяти на 16 банков, причём ячейка с номером A попадает в банк с номером (A mod 16). Также используется конвейер из 6 этапов: 1) Чтение команды 2)Дешифровка команды 3) Чтение первого операнда 4) Чтение второго операнда 5) Выполнение команды 6) Запись результата (на место первого операнда). Считая, что каждый этап работы конвейера занимает 1 единицу времени и в первоначальный момент времени крнвейер пуст, вяснить, сколько времени займёт выполнение следующих команд (слева - адреса команд, 01 - код сложения, все числа - шеснадцатиричные):

0000: 01 5411 8073

0001: 01 0148 5411

0002: 01 6691 8073

3. Определить значения флагов SF, CF, OF после выполнения следующих команд:

mov AL, -56

add AL, 160

4. T db 256 dup (?)

Пусть T - символьная строка переменной длины (длина указана в первом байте и, соответственно, не привышает 255 символов). Выпишите комады (не более 6), которые выполняют следующую задачу: если строка непустая, то записать на место последнего символа букву 'Т' (можно использовать любые регистры).

5. Пусть под сегмент стека в программе отведено 501h байт. Выписать команды (не более 11), которые решают следующую задачу: скопировать всё текущее содержимое стека (непустого) в область памяти, начинающуюся с адреса 31A80h (считать что эта область не пересекается ни с сегментом стека, ни с сегментом команд; можно использовать любые регистры, но нельзя менять SP).

6. Выписать макрос JDIF LN, M (здесь LN - это <l1,l2,...,ln> - последовательность чисел, заданных непосредственно; n>0; M - метка), который осуществляет переход на метку M, если AX отлично от всех отрицательных чисел последовательности или если отрицательных чисел в этой последовательности нет (никакие регистры, кроме AX, использовать нельзя).

7. Вычеркните команды, записанные с ошибкой:

div 5

lea BX, [BX]

mov ES, DS

;this one I forgot

add 800[SI], 15

sub 15[SI], 800

test 11b, CL

8. В программе на Турбо Паскале процедура ... {$F+} procedure P(var С:char); external; ...

описана как внешняя. Написать на ассемблерный модуль, в котором была бы описана процедура P, заменяющая символ С на символ chr((ord(С)+1)mod 256) (замечание: в языке Турбо Паскаль ссылки процедуре всегда передаются в виде seg:offs, причём seg записывается в стек первым).

9. Ответьте на следующие вопросы: а) Что такое внешние имена и чем они отличаются от других имён модуля? б) Как ассемблер узнаёт, что какое-то имя является внешним?

10. Пусть даны следующий загрузочный модуль и его загаловок (слева указаны относительные адреса команд; все числа - шеснадцатиричные):

(0) XX XX XX XX

(4) B8 00 00 8E

(8) XX XX XX XX

(A) XX XX XX XX

Длина программы 17

Точка входа 0:3

Начало и длина сегмента стека: 10 и 7

Таблица перемещаемых адресов:

сегментадрес вхождения

10 0:5

Пусть загрузчик выделил для программы область памяти, начинающуюся с адреса 27000h. Указать, какие изменения загрузчик внесёт в программу и какие значения он присвоит регистрам SS, SP, CS и IP.

Экзамен 2002 Вариант 2

1. Дать определения понятий:

а) Машинное слово

б) Непосредственный операнд

в) Дальний переход

2. В ЭВМ типа УМ-3 используется расслоение памяти на 16 банков, причём ячейка с номером A попадает в банк с номером (A mod 16). Также используется конвейер из 6 этапов: 1) Чтение команды 2)Дешифровка команды 3) Чтение первого операнда 4) Чтение второго операнда 5) Выполнение команды 6) Запись результата. Считая, что каждый этап работы конвейера занимает 2 единицы времени и в первоначальный момент времени крнвейер пуст, вяснить, сколько времени займёт выполнение следующих команд (слева - адреса команд, 02 - код сложения, все числа - шеснадцатиричные):

0000: 02 4052 3932 4055

0001: 02 4052 3933 4056

0002: 02 4052 3934 4057

3. Определить значения флагов SF, CF, OF после выполнения следующих команд:

mov BH, 150

sub BH, -56

4. S db 256 dup (?)

Пусть T - непустая символьная строка переменной длины (длина указана в первом байте и, соответственно, не привышает 255 символов). Выпишите комады (не более 6), которые удаляют последний символ строки, если это буква 'S' (можно использовать любые регистры).

5. Пусть под сегмент стека в программе отведено 1001h байт. Выписать команды (не более 11), которые решают следующую задачу: скопировать всё текущее содержимое стека (непустого) в сегмент A того же размера (считать что эта область не пересекается ни с сегментом стека, ни с сегментом команд; можно использовать любые регистры, но нельзя менять SP).

6. Выписать макрос JDIF LV, M (здесь LN - это <v1,v2,...,vn> - последовательность переменных; n>0; M - метка), который осуществляет переход на метку M, если AL отлично от всех байтовых переменных последовательности или если таковые в этой последовательности отсутствуют (никакие регистры, кроме AL, использовать нельзя).

7. Вычеркните команды, записанные с ошибкой:

???

8. В программе на Турбо Паскале процедура ... {$F+} procedure Q(var B:byte); external; ...

описана как внешняя. Написать ассемблерный модуль, в котором была бы описана процедура Q, которая присваивает B значение (B*103)mod 256 (замечание: в языке Турбо Паскаль ссылки процедуре всегда передаются в виде seg:offs, причём seg записывается в стек первым).

9. Ответьте на следующие вопросы: а) Что такое общие имена и чем они отличаются от других имён модуля? б) Как ассемблер узнаёт, что какое-то имя является общим?

10. Пусть даны следующий загрузочный модуль и его загаловок (слева указаны относительные адреса команд; все числа - шеснадцатиричные):

(0) XX XX XX XX

(4) XX XX XX XX

(8) XX XX XX XX

(A) XX XX XX XX

(10) B8 00 00 00

Длина программы 18

Точка входа 10:0

Начало и длина сегмента стека: 0 и 9

Таблица перемещаемых адресов:

сегментадрес вхождения

0 10:1

Пусть загрузчик выделил для программы область памяти, начинающуюся с адреса 44000h. Указать, какие изменения загрузчик внесёт в программу и какие значения он присвоит регистрам SS, SP, CS и IP.

Экзамен 2004 вариант 2

4/06/2004

Экзамен по праку

Написал Бригида Иван (alf)

А С С Е М Б Л Е Р

В а р и а н т 2

1) Написать для УМ-3 программу, которая сначала вводит массив из 400 вещественных чисел, затем выводит сумму всех элементов этого массива с четными индексами (2, 4, ...). В программе длиной не более 13 строк необходимо использовать мнемонические обозначения кодов операций.

2) Дать определение, что такое аппарат привелегированных комманд.

3) Для учебной 3-х адресной ЭВМ УМ-3 дать определение следующих понятий:

а) регистр б) регистр(счетчик) адреса в) регистр команды

4) CS=1666h ; DS=2555h ; SS=3444h ; ES=4333h ; Выписать не более 3-х предложений Ассемблера, которые пересылают содержимое байта памяти с абс. адресом 25540h в байт памяти с абсолютным адресом 2666Bh

5) Пусть N-номер группы, в которой Вы сейчас учитесь (101, 102, и т.д.). Для приведенного фрагмента программы на Ассемблере определить, что будет выведено по команде outint:

mov ax,-4094

mov cx,ax

sar ax,cl

or ax,N

imul ah

outint ax

6) Описать близкую процедуру с именем Ost, которая получает в качестве параметра адрес переменной размером в слово из сегмента даных. Процедура присваивает этой переменной значение остатка от деления БЕЗЗНАКОВОГО числа, находящегося в данной переменной на 11. Процедура должна выполнять стандартные соглашения о связях.

7) Привести макроопределение с именем MovRG (k>=1, Ri-регистр общ назначения, Ni-число, между Ri и Ni стоит ПРОБЕЛ). Это макроопределение должно формировать макрорасширение команды показанной ниже. Макроопределение не должно проверять наличие и правильность типов своих параметров.

MovRG <R1 N1,...,Rk...Nk>

||

\/

mov R1,N1

....

mov Rk,Nk

8) x db ?

Вычеркнуть с ошибкой:

LEA DI,X[BP+2]

SHL X, BYTE PTR CX

MOV BX,[SP]

DIV [BX]

ADD BX,'B'

OR X, WORD PTR DH

9)Указать значение BH (в виде знакового десятичного числа) и флагов CF, OF, SF, после выполнения следующих двух команд:

mov BH,150

sub BH,-56

Ответ: BH=

CF=

OF=

SF=

10) Определить, что такое статическая и динамическая связь по управлению между модулями на Ассемблере.

Экзамен 2003 вариант 1

Распознанный текст из изображения:

Фамилия И.О.

Грриия

1. Написать десятичное число, которое выведется после выполнения фрагмента программы:

точ сх,-254 1

жоч аж, сх Огвет =

$впзХ аЬ 1

вЫ ах, еХ !

оиФ4аФ асс !

2. Написать справа от вопроса фрагмент программы

на Ассемблере (не более 8 команд), который выводит ~по ояййлФ) остаток от деления целого беззнакового числа размером в слово, расположенного по физическому адресу 123456, на число 19 (адрес дан в десятичной форме записи)

3. Записать справа от вопроса фрагмент программы

~не более 7 команд) для одноадреской учебной

машины, реализующий оператор присваивания

У: 2~Х/~У при следующем распределении памяти: ~

Х вЂ” 0100, У вЂ” 0101, Использовать мнемонические

коды операций: ЧТ вЂ” чгение из памяти на

сумматор, ЗП вЂ” запись из сумматора в память,

СЛ вЂ” сложение, УМН вЂ” умножение, ДБЛ вЂ” деление.

5. Пусть описан массив Х[0..99] знаковых целых чисел

Х с1Ь 100 с1пр (?)

и пусть в регистре Ьх находится число 1 от 0 до 99.

Записагь справа от вопроса минимальное число команд,

реализующее присваивание ах: = 1.*Х [~ ~ 1

б. На каком этапе обработки программы на Ассемблере в поле с именем Ра~ а команды

БТаг1: шоч ах, Ра~а

будет занесено числовое значение адреса начала сегмента Ра~а, деленное на 16. Привести обоснованный ответ на обороте.

7. Из указанных ниже команд на Ассемблере вычеркнуть те, которые записаны с ошибкой (при

описании переменной У бы 7):

аЬ1 101Ь,с1 шоч ах,У-З асЫ 40[Ьх],30 таоч Ъхр [зр+б~ сшр схр 'Ф' [Ьх1

8. Написать макроопределение с заголовком.

Мах3.лиза васго Х,Х

Это макроопределение должно присваивать параметру Х наибольшую из знаковых величин Х и У. Параметры Х и У должны быть только. переменными одинакового размера в байт или слово. Макроопределение обязательно должно проверять безличие и допустимость своих параметров, выдавая необходимые диагностики об ошибках. (Огвет на обороте).

4. Перечислить достоинства и недостатки независимой трансляции модулей на Ассемблере, Огвет

привести на обороте и обосновать.

Экзамен 2003 вариант 1

Распознанный текст из изображения:

ф 910.

], Ныпкатьдмлтмягю чясю, мхчрее вызедегса вомм нюх»пеева фрымевта прюрзнйыг

мот юг, -266

акгт ав пн Ответ

Ьз»3 ан

внь ем,оь ]

опювх езг ]

1.Н Р ср Ы фр Щ Р

гы,зссысбдаре (ве более В ююв]га юторый сыно.

лат (ао евтззза) солт»к сглаз»ген гмюго беззгыасано тесла рознером а лсвх раюоломснвого

па фюячсозому алрг»у 1234 36, аа тлело! 9

(мщу дзв в деснмю»6 форме зююв)

3,3з и щю щхгюфр мм щ р ю

(яе боюе '] коневе) длз одлссдресюр учсбюй

ммпзлгд реем»;лощин оператор щмозавмыю

9»г'Х]3»щ щ в р р

Х вЂ” 0]00, У -01 01. Ноаоаьзоазм. мнемоввчесыы

юлы опсраппйг ЧТ- псввс пз пвмюг на

сумматор, ЗП - запись ю суммамгра в пампа,

СЛ вЂ” сжкгзам, УМН -умаовевес, )ПЗ]- домы».

4: Нерсчжюпь доставаема к аедоогызн возне»»мой трансаспвв модулей ва Ассенбюрс. Отзст

щмвсств ва сбором и обоснован

5, Пусть опасен мюсвв Х(0..99) знаковых целых чисел

Х 0Ь 10О еор и]

а пусса з рыясщ» Ьх лакоыгпв елово 1 ог 0 до 99.

Зымюы справа ог вопроса мвавмальвеа ымю юывнд,

рсаднзуамые арден»завес ах г 1*Х (1]

6. На «аюм мале сбработмг программы вз Агюмбюре в посс с вмеюм Ьа Са сонным

нсагсг »оч ах,паса

будет вансен» чвеловос зваченне »0»са начала сююпа паса, м»Вав» на ]6. Прнеюга

ебссюзаявый стает аз сборно

7. Из узнпнопак папе «омавд нз Ассамбкере вмчеравузь те, юторые записаны с омвбзой (орв ымеенввперсмснпойт пе ГР

зю 101п,о] мо, ах,т-г агм СО[Ьх],30 поч Ьх, (зрсс] азр «х, '9" ]Ьа]

В. Нюнгюь мокр»прелеюнне о змалсаком

~/

Мах1аела паоло Х,т

Э» мыдх»арюелеым ыюано при»спазм параметру Х взвбсльыую па зескесыт зелвчав Х я У,

Параметры Х в у докахы бжь только, псрсмсваюзн одев»»вою размере в беВт юн слою.

Модхххщедпмнне абззамегыо долвпо прозерать веаачю и довуепваю.ь смех мбежтров,

высевал аесбходвгны двынсстзхн сб олгнб хан. (Откат аа сбор»с).

Экзамен 2004 Вариант 1

Распознанный текст из изображения:

х~ ),~.э-эх, )М

а бсо. Ю) Е А'

ММ Р Мб) с ) с р

Вр,

2 Вс о м с о р в а

\ б О .2) Вр )

М

х)с,),ь

Р. Д

\ м эвм

б ) б: с . Р») ) )о а

с

С В ЭМ,

,) *бвв с В),В

с ас

)бхоо О

З,-: .'.'.- «о *с

) со м м ВВС СОМ) СН- ь а Н М

М

М

М ) ) ). М. р ) СХ

с ) сн )В р

Ф В

Р С мвх 'о)2)ВО

ао р хон

Ссрс,б

МЖ ЮСВХ СббвхбаО Соб СОО) МЮ ВЬ )ВЦ МО ХМХ) МОС ООИ Х,

)

Х В ао * р Х

в ао, х+)- о

)ан ° о ю

р в

МЮ ~ ) 'б " с"СО

Экзамен 2004 Вариант 2

Распознанный текст из изображения:

Н РРУ М Щ И.О.

1, укаппь, какое знаковое дссатвчвос чиню ареютзвазсс байт 99Ь вараном «ода и «акое - в допозмитсвьнем

«оде

чг

2 Опюшю на сведующие вопрос»с а) Что ваксе рассммннс оперативной паматм7 б) В чем вылова от ресспкюы паюгпд «) Верно зы, чю щас расс«сени«пеппи асс»овен одвеврсмпниш юктун к любы» двум (раыючным) а кйкам»амат«7

2. Выше юпендь 0)ЬВ)дшса) ют ры

за засылают «ед бусин О з байт асмп» е

аб помню адрес (АВСОЬ. (Меем

исоазьзовазь побыс рог«евры.)

4 Пусгь рспюгр ОБ указьювст па начею осыпит» О (с». пива). Опрсдсюпь э»васюк регистра АН несю

выпоанснна киса«к указыюьп есрызе.

О БЕОМВ)(Т АББОМЕ О5:Р

ХОВ СЬБ СЕАВХт

Т ОВ 4,5А7,8 ' ).ЕА О1,Х

=К.

О Ег(ОБ МОЧ АН,З(ВХ)-БЕ)!)

Ошю; АН=

5 Изассшо. что в ПК «оиюнпг ус«ее»его персюдз

рсааизуют только «ороткие псрсювы. Ошюпь

н касс

)Е(О)(О М (М ° метка),

когорью рсавнзусг юйствнс команды ! Е в кбчзс

«зим»от п»ыюда.

а Проведшие зза П К такое прове»мыс»не пимчсскка зев чснив гпы и ййс в ашгс банта, щп «о горо» «змеись~

)(ОТ, 02(О м ОР. нрааиеьно рпзнзуют ип вчсскис операрн» отрцнвию, ювъюнюзю п зизыошшик

оотвегстзсюю и «оторосчтзнчссюв от.врез«напевна Тепе . 'ББЬ, пса =, ЬЕЕЬ (Сзый выбор обоснован,)

7 В»он ззъ мюрорасшнспюс ада мако каменны ММ 25щш саед юш м ощыкюсннн макао ММ

ММ МАСКО КЗ. ОБНШ:" ММ2.5"=ь

)РК !ПЕС

АЬС ОВ "БЬС"

А

ЕНО)Р

!РО!Р К-)ь,со

ВйК ОЮ К Си)РРСЬК1

ЕКБВР

8 В программе на асыке турбо и скюь нисе!се сксзуюшш па»дню (бппкой) нрпыд)ры Е:

гпы юг=0..400; Яуншг «иа

ыг- пву(»н) ога«;

ргосспгш )((пи «:ап; гш\Ь

ь тш «(,2=0

За»копь в ло» описании' шщытер мспду ьсй» и юа

~г зон»быт»ум ветаюгу (а псрзтор епз), сзз рюогую кс б аю аддндддшшпбдюд. сад

з. Вызмсазь табзюк»нп (ти). которую посдс первого щююда составит ассе»ба р дри траншзпин ею«уме»го

сдула:

РОВ!2С 1., Н

С БЕС МЕ)(Т

АББОМЕ СБ:С

АОВБ'

!.. МОЧ АХЛ

КЕТ

Ы ЕОО7

С ЕЫОБ

В4О

10 О«ма вз фунюпй коипомоапикз -рсаакгиреаани моим аюююы пыыв. Оп гьтс гы вспрхы; а) В чс» пе, се

зг й фуюоп»7 б) почему сс ас »опек аьвкпгапыасс»басре

и

е

е'

PrakExam2004(4 вариант с кусками решения)

Распознанный текст из изображения:

!М ржи ж !. (04.062004)

Групгга Фямгглггя И.О,

М.З и ! мм, к си»выла кло г

в и массив из 300 колы» Фсел, нщм вы»ть

!. Нанпсзть лля у'мбиой мажжты У рп ра у, сгори»

умму воск мсм»нтов ыюго мысина с нсчвтиыми ипдвксв ( рв

и кевин (зто первый, трети и т.л.

ни«с»кис ойомычспнв лилов опсрапи .

й. (Ответ на ойорожЗ

ма;миной ис бочсе ]3 строк пеобхолнмо нсжжмоввть миемон

ВВМ (отпп привести низе иа втой жв оп!роне лпыв)

2. Дать анре»алев»с мультипрогрвммного режима рабюы . (о

3. длс учебной тря»адресной ЗВм ум.З кать опрслсиение с»служим» помтий. (Ог»ст нз обороте)

в) Адрес»чейкн. 6) Мажннное слово, в), Код опврвпии.

4. Пусть сегментные регистры нмсыт закис зла»синя: ] Отвятг

СБ ]6660; ПБ 25550; 55-34440; ВБ 43330, Выписать небсма тРБ»

прсдлоимния Ассемйлергг, котьрые пересылыот сод»рваное Бвйж памяти

с абсолют!Фм алрссом 3443Ап в байт памяти с абсапотгялм ядре»он 355500 '

5. ПУсть Н - номеР гРУппы, в котоРой Вы сайчас ' по«пнт -300 0

уьвтссь()0]302нтл) Для прпввлвииогоспрвва ! мпч сх,вн

фрзгмс пс грогрвммы на Асссибжрс опрслежпь, что ! лак ах, с1

бу»»маслено к мвкрекомвнлс оис!.пн.

е»

Ззю1 я»

Ответ. оикзпс пх

У

б. Опнсзп, 6»итьуы пропедуру с именем спаес, каторз» ~золу ~ает в кпчестве паря«стоя адрес ~срс«есной рымероы

в славе из сегмента Милых. Пронсвурв приск»и»вот »той псрсмсннов значение частног с «] колени» ВВдйдд(0 «вснп ис.- ход»пжгосв в »»ннов мсрсмснпой. па число )3. проне»ура дптзю~а выгголгыть стзнлартиыс соглажениа о свяжх (Ожет на

обороте).

т, при»сети макроопределение с и»жнем лу" ев, обре!денна к которому имеет вия, показан~лей ниже слеза (здесь в

п»рвмстрс спнсмг ]~1,  — има, «; зван яовросв 2 илн числе, ммвду ж в т, стоит Брдфй(), Это чвкроопрелеясниз лолжно

формнгю»ать макрсрвсжнрзгим, показанное ниже справа. Макраопрмаленке»е амгппю проверять нани»не и прввилг

нос~ь. ипоа сани» пнрамс\рои. (Ответ )поборете).

х. ЗЬ

Нуснв <хт т„.,к„т„> +

хь 4Ь «»

Э.Пустьолнсзив срсмснизяХ В)Ч !

И* у»а»анны» нине намкнл вычеркнуть тс, то записаны с оы»бьол'

МГС АЫ,А!. МОЧ АХ,[ВХ»й] БН!. (ВХ),1 *ПО АХ,'Х' АРС ХХВХ] МОУ ВЯУР Ц Е Х,0

9. у»выть значения рспжтрв А!. (в виве знаково»с лес»ты пыго числа). и флагов ср, Ор н Бр, которые олн будут

!ссггь псле»мпслненис слелуюших лвух поыянл:

пот м« -Зсг Отвсп А1 Ф .()

анн Аг„1 60

10, Опрслелитм что такое е;атическз» н ли«ам»»се»я» сань по ленным мсжлу модул»«н нз Асссмбмра,

Отмп

Экзамен 2004 Вариант 1

Распознанный текст из изображения:

Фамилия И.О.

'" 1. Написать для учебной машины УМ-3 программу, которая вводит массив из 300 вещественных чисел и выводит

умму тех из этих чисел, которые больше предлоследнеео числа во введенном массиве. В программе длиной не более 14

трок необходимо использовать мнемонические обозначения кодов операций. (Ответ на обороте,)

2. Пусть в центральном процессоре используется конвейерный способ выполнения команд, при котором параллельно

выполняются следующие 6 этапов; 1) чтение команды, 2) дешифровка кода операции, 3) вычисление исполнительных

адресов, 4) чтение операндов, 5) выполнение операции, 6) запись результата. Считая, что иа каждый иэ этих этапов

тратится 1 единица времени, и что вначале конвейер был свободен, определить, сколько времени будет затрачено на

выполнение следующего фрагмента программы: виЬ ах,Х[в1] Ответ (число единиц времени) = адй Ьх,ах 1 хог Х[Й],Ьх

3. Дать определение мультипрограммного режима работы ЭВМ, перечислить все аппаратные средства ЭВМ,

необходимые для работы в мультипрограммном режиме. «Ответ на обороте.)

-] 4. А 0В?;беззиака

В 0% ?; соэнаком ~ ~с„х ~~,'~

Рассматрилая значение А как число без знака, а значение ~

В как киоко со скоком, пописать справа от вопроса ~ П к ' ~~ ~ ~.ц'

оманды «не более 8)„реализующие присваивание

В:= (В+А) йч 400. Считать, что при сложении ~йлЮ~

Р".' 'Р' 'т'Р ~н

переполнения не будет. Ю~

1„и.;' «, «-"

!

1

к к, в гт

Кт вт

4 6. Описать близкую функцию с именем Ча1ое, которая получает в качестве параметра адрес начала некоторого гмента памяти, лелеянный на 16. Функция выдает в качестве результата знаковое целое число, равное удвоенному начению байта с адресом 633 в этом сегменте. Функция должна выполнять стандартные соглашения о связях. (Ответ на обороте,)

4 7. Описать макроопределение с заголовком Л)1Р шасго 1.Ь1, М «где 1.Ь! — параметр-список <Х1, И2, ..., Ир явно

заданных знаковых чисел, а М вЂ” метка). Макроопределение делает переход на метку М, если значение регистра АХ

отлично от всех отпицательных чисел иэ параметра-списока 1.Х или если в 1ЛЧ нет отрицательных чисел.

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

(Ответ на я!бороте,)

~ох оТЖ-"Ф~

8. Пусть описана переменная Х ЭВ ?

Из указанных ниже команд вычеркнуть те, что записаны с ошибкой;

М1Л. АХ,ВХ 1.БА СХ,[31] ЗНЕ [131],1 А00 В1.,[ВЦ ЯЗВ Х,[ВХ] МОЧ МОИМ РТВ. Х,О

+ +,

9. Выписать вид внутреннего машинного представления байтов с адресами Х и Х+1 в двоичном нли

шестнадцатеричном виде;

Х йв — 2046

Вид байта с адресом Х

Вид байта с адресом Х+1 =

10, На каком этапе компиляции ассемблерной программы выявляется ошибка "неописанное имя"? Ответ и его

обоснование привести ниже на этой стороне листа.

5. Х ЭФ? Содержимое Х трактуется как дата в упакованном виде: левые 5 битов — число (1,.31), следующие 4 бита — номер месяца (1 ..12) и правые 7 битов — две последние цифры года «0..99). Выписать справа от вопроса команды «ие.более 6) для перехода на метку В13ММЕЕ, если в Х хранится летняя дата, Значение Х не менять.

1 1~.с-о'~ к /Н~

й.и.~~ У Л,

, ~ф~',~.„~~,

~~ $

Б Я.Х

~ ~ф~ЯРР С ~:~'иЛ -г

'р ° ~,'

Экзамен 2004 Вариант 3

Распознанный текст из изображения:

Н р р) Е И.О.

У««затъ, «*кос «кассовое все«та«нос свело прсютав«эст байт 99И «дранок «одл н га«ос - в «оиолвктсаь«о«

гв

7 Опмтюс на еисдуюшие аопресм: в) Ета такое расслоение шнративмой памкпр б) В чем выпзда от р оса мшя памятиу «) Всрмо «и, по при раепюс«ии намыв «озмовси оюю«рсмваньй дшт)п к юобым лву«(раз«ичным) ачслкаи паизпб

3 Вьдшсзть коые«юл 0(лййаЮЮ, кс'горы«

кызыла«сап «оя буяны О в байт «смюа с

«бсомопшк а«рогом !АВСРЬ. (Момва

и г, зьзоюпь любыс рсгиакзьс.)

4 и ушъ рстисср 175 )юяыимт из кача«о есзысита Р (см. с«саэ), Опрслсыпь значение рыметра АН поею

ыполнсння кома«к уквзвнвьп птрию.

Р БЕОМЕНТ АББПМЕ Р5:Р

ХРВ(,2,3 ЕЕАВХЧ

Т РВ 4,5«К7,8 1.ЕА Р1,Х

Р Н4РБ МОЧ АН,Э(В)П-ЭЕН!

От«Юг АН=

5 Изв оп!о, по в ПК команды условного псрсюда

реализуют талька короткие псрсвюм. Опиппь

«рос

)Н.ОНС М (М ° нотка),

кагор ш ршлизуст действие «аманлы )Е в шсучю

ллинног исрсвша.

6. Пред«оззпе длз ПК такое лрсдсгзввсюм югичсския значений пос и (аис в вид б вт, лрн которо и амды

НОТ, АНР м Ой прап!лспо усамябют юючсскмс ошсрндю стрип«мы, ювъкаадвш и юпьюышии

оотвст ливио и к торос .тяичаетев етщ сдшаавсюш (е!ш' и (ЮЬ. п«с = бррй (Оюй эмбер об к«о«ать.)

7 В ши атък «рорасшиссннеиля сююкомвнвмММ25прнеюкюш мопр десеикнмжро ММ.

ММ МАСРО КЗ. О2ДЮ) ММ 2.5 ==ь

!Р Кс-! НЕ 1.

Аясъ РВ ") ЛС"

ЕНТНР

(РР!Р К.г .еО

ВАК Рю К РРР(КЙК!

ЕНР!Р

ЕНРМ

8 В прагра» с нс «зыке Турбо П саюь и» отса следуюшю опюэюс (бямзкой) лропедурм Н:

сУ(М ШС= О.. 400; Оувю: «ко

ъ= палов) с(шт;

рпссшпс Н( аг «юг ппц.

ъср е[фю юб;

Эзк юпь в ятом описав«и' опер тор мои«у ь«рв и юл

* и бюрную втек«у (ма перетер а), сэсриашую не 6 ЛМ 5 Л мшд «~Юбяяра 0

0. Вью«есть т бяюы якп тТИ), копрую после первого про ода еошэвит сгембл р при трансляпии с«с«умы го

алую;

РОБЕ!С )..Н Дурю:

С 5ЕО МЕНТ

А55ОМЕ С5.С 7

АРВЕ

1 МОЧ АХ.А

КЕТ

Н ЕОО 7

С ЕНРБ

ЕНО

!О Олнаюфуюошйкомпонеашик» -рсдзктнр взю м м лул ю и юл Оп п,ън ширмы а)В ме ы е

т в 07«аляму б) Почему ю «с мо«етаыпсвюпь апсмбдЮ7

и

е

Экзамен 2004 вариант 2

Распознанный текст из изображения:

Фамилия И.О.

Грриия

1. Написать десятичное число, которое выведется после выполнения фрагмента программы:

точ сх,-254 1

жоч аж, сх Огвет =

$впзХ аЬ 1

вЫ ах, еХ !

оиФ4аФ асс !

2. Написать справа от вопроса фрагмент программы

на Ассемблере (не более 8 команд), который выводит ~по ояййлФ) остаток от деления целого беззнакового числа размером в слово, расположенного по физическому адресу 123456, на число 19 (адрес дан в десятичной форме записи)

3. Записать справа от вопроса фрагмент программы

~не более 7 команд) для одноадреской учебной

машины, реализующий оператор присваивания

У: 2~Х/~У при следующем распределении памяти: ~

Х вЂ” 0100, У вЂ” 0101, Использовать мнемонические

коды операций: ЧТ вЂ” чгение из памяти на

сумматор, ЗП вЂ” запись из сумматора в память,

СЛ вЂ” сложение, УМН вЂ” умножение, ДБЛ вЂ” деление.

5. Пусть описан массив Х[0..99] знаковых целых чисел

Х с1Ь 100 с1пр (?)

и пусть в регистре Ьх находится число 1 от 0 до 99.

Записагь справа от вопроса минимальное число команд,

реализующее присваивание ах: = 1.*Х [~ ~ 1

б. На каком этапе обработки программы на Ассемблере в поле с именем Ра~ а команды

БТаг1: шоч ах, Ра~а

будет занесено числовое значение адреса начала сегмента Ра~а, деленное на 16. Привести обоснованный ответ на обороте.

7. Из указанных ниже команд на Ассемблере вычеркнуть те, которые записаны с ошибкой (при

описании переменной У бы 7):

аЬ1 101Ь,с1 шоч ах,У-З асЫ 40[Ьх],30 таоч Ъхр [зр+б~ сшр схр 'Ф' [Ьх1

8. Написать макроопределение с заголовком.

Мах3.лиза васго Х,Х

Это макроопределение должно присваивать параметру Х наибольшую из знаковых величин Х и У. Параметры Х и У должны быть только. переменными одинакового размера в байт или слово. Макроопределение обязательно должно проверять безличие и допустимость своих параметров, выдавая необходимые диагностики об ошибках. (Огвет на обороте).

4. Перечислить достоинства и недостатки независимой трансляции модулей на Ассемблере, Огвет

привести на обороте и обосновать.

Answers1

Распознанный текст из изображения:

ОТВЕТЫ. Вариант 1

1. УМ-С. Обратная польская запись: а Ь с ч +. Возможные решения:

00 0102 ОО 0104 00 '0!Об ОЗ 01 10 0100

2. Ответ:

1. По внешнему виду в памяти команды и данные не различаются.

2. Ко~да содержимое ячейки поступает в регистр команд (РК), оно трактуется как команда, а когда содержимое ячейки поступает на регистры операндов (в АЛУ), оно трактуется как дашюе.

х

х!

4. Ответ: А!.. =. ! 15, СГ = 1, ОР = 1, ЯГ = 0

жохг АХ,4000Ь

жоч РЯ,АХ

жоч РВ:[ОВСАРЬ),ОВСАРЬ! иокхг рак можно не писать

точ иокб рек РБ:[ОВСАРЬ+21,4

б. АРРЗ ркоо

ривЬ

шохг

ривЬ

ривЬ

бак

Ьр

Ьр,ар

с[в

Ьх

в стек а

натек Ь

в стек с

Ь*с

а+(Ь*су

из стека тек

ОО 0104 00 О!Об 03 00 0102 01 10 0100

в стек Ь

встек с

Ьхе

в стек а

Ь+(Ь 'с)

из стека гея

Answers2

Распознанный текст из изображения:

меч с[н,[Ьр+8]

шоч Ьх,[Ьртб]

ас[с) могг1 рсг [Ьх]об

ас[с мсгсз ркг [Ьх+2[,0

рор 'Ьх

рор Ьн

рор' Ьр

ген 4

ХООЗ есс[р

Оооооооте васко Х

1оса1 Н Ос[С

сева Ъуае рег Х, 1

бв Н Ос]о

1Г Тура Х ЕЯ стчогст

вик арг Х1

гс1 нексии раг Ха2,1

е1ве

ви1 Х,1

есскя

Н Ос[и:

есне

8. Ошибочные команлы подчеркнуты:

мш [нх] мю лх, [Вх,зт] аьсв х хоР, х, 'х' вос х,зР меч оиои> Рта х, с

9. Ответ:

[. Преимущество — могут выполшпъся большие программы, целиком не умещающиеся в оперативную память, по по мере вызова подгружая процедуры [на рабочее поле[.

2. Недостаток — увеличивается время выполнения программы

а) за счет работы слузкебных процедур динамического загрузчика

б) из-за выгрузки/загрузки процедур на рабочем поле [смена процедур, трешннг, свопинг).

10. Фрагмент се1 мента кода;

еоч ах, вен Х

мог Са,ах

тот ах, Х

снсз

еоч Ьх,13

ксз1ч Ьх

еоч Х, ах

3_2007

Вариант 3 2007

1)Выписать фрагмент программы (не более 7 команд) для УМ-1 реализующий A:=A^2+B^2, если A<->0204, B<->0204

(коды операций в УМ-1: 00 - запись в сумматор, 10 - чтение из сумматора, 01 - сложение, 03 - умножение)

2)Что будет напечатано после выполнения следующих команд:

mov ax,-2068

cwd

mov bx,2

idiv bx

outword ax

3)Вычеркнуть неверные команды (x db ?, w dw ?):

xchg si,[si]mov [bx]+2,4shl dx,5mov cx,w-xsbb ax,'x'add ds,w

4)Описан стек размером 400 байт. Выписать фрагмент программы, копирующий четные числа (word) из стека в область

памяти, начинающуюся с абсолютного адреса 4bacch. Считать, что сегменты не пересекаются, не изменять ss, sp

5)Определить значения флагов cf, of, sf и значение al (как знакового числа) после выполнения команд:

mov al,-56

add al,170

6)Описать близкую процедуру, для которой эквивалентный заголовок на Паскале имеет вид:

Procedure assgn(var x:int; n:int);

реализующую присваивание x:=n. Процедура должна удовлетворять стандартным соглашениям связи.

Выписать фрагмент программы, производящий присваивание nt:=zero, где nt - переменная типа word,

zero - числовая константа, заданная дириктивой equ

7)Привести макроопределение с заголовком

jgt macro v,l

где v - набор переменных <v1,v2,...,vk> любых типов, l - метка. Макрокоманда должна делать переход на метку

l, если значения всех переменных vi - слов - больше нуля (как знаковых чисел) или если переменных типа word нет.

Выписать макрорасширение для макрокоманды jgt <z,a,y,w> *тут были написаны 3 какихто символа, я не могу понять что я там писал*

где параметры имеют тип: a - byte, y,z - word, w - dword

8)Программа состоит из 2х модулей. В кодовом сегменте головного модуля (Public) описана общедоступная переменная

x (word). Выписать 2й модуль, содержащий процедуру pechx, печатающую x как знаковое и как беззнаковое

9)Есть предложения: extern x:abs и mov ax,x.

Какая служебная программа подставляет x в команду mov ax,x?

10) УМ-3.

Дать определения:

а)адрес ячейки

б)машинное слово

в)код операции

PrakExam2004

Распознанный текст из изображения:

!М ржи ж !. (04.062004)

Групгга Фямгглггя И.О,

М.З и ! мм, к си»выла кло г

в и массив из 300 колы» Фсел, нщм вы»ть

!. Нанпсзть лля у'мбиой мажжты У рп ра у, сгори»

умму воск мсм»нтов ыюго мысина с нсчвтиыми ипдвксв ( рв

и кевин (зто первый, трети и т.л.

ни«с»кис ойомычспнв лилов опсрапи .

й. (Ответ на ойорожЗ

ма;миной ис бочсе ]3 строк пеобхолнмо нсжжмоввть миемон

ВВМ (отпп привести низе иа втой жв оп!роне лпыв)

2. Дать анре»алев»с мультипрогрвммного режима рабюы . (о

3. длс учебной тря»адресной ЗВм ум.З кать опрслсиение с»служим» помтий. (Ог»ст нз обороте)

в) Адрес»чейкн. 6) Мажннное слово, в), Код опврвпии.

4. Пусть сегментные регистры нмсыт закис зла»синя: ] Отвятг

СБ ]6660; ПБ 25550; 55-34440; ВБ 43330, Выписать небсма тРБ»

прсдлоимния Ассемйлергг, котьрые пересылыот сод»рваное Бвйж памяти

с абсолют!Фм алрссом 3443Ап в байт памяти с абсапотгялм ядре»он 355500 '

5. ПУсть Н - номеР гРУппы, в котоРой Вы сайчас ' по«пнт -300 0

уьвтссь()0]302нтл) Для прпввлвииогоспрвва ! мпч сх,вн

фрзгмс пс грогрвммы на Асссибжрс опрслежпь, что ! лак ах, с1

бу»»маслено к мвкрекомвнлс оис!.пн.

е»

Ззю1 я»

Ответ. оикзпс пх

У

б. Опнсзп, 6»итьуы пропедуру с именем спаес, каторз» ~золу ~ает в кпчестве паря«стоя адрес ~срс«есной рымероы

в славе из сегмента Милых. Пронсвурв приск»и»вот »той псрсмсннов значение частног с «] колени» ВВдйдд(0 «вснп ис.- ход»пжгосв в »»ннов мсрсмснпой. па число )3. проне»ура дптзю~а выгголгыть стзнлартиыс соглажениа о свяжх (Ожет на

обороте).

т, при»сети макроопределение с и»жнем лу" ев, обре!денна к которому имеет вия, показан~лей ниже слеза (здесь в

п»рвмстрс спнсмг ]~1,  — има, «; зван яовросв 2 илн числе, ммвду ж в т, стоит Брдфй(), Это чвкроопрелеясниз лолжно

формнгю»ать макрсрвсжнрзгим, показанное ниже справа. Макраопрмаленке»е амгппю проверять нани»не и прввилг

нос~ь. ипоа сани» пнрамс\рои. (Ответ )поборете).

х. ЗЬ

Нуснв <хт т„.,к„т„> +

хь 4Ь «»

Э.Пустьолнсзив срсмснизяХ В)Ч !

И* у»а»анны» нине намкнл вычеркнуть тс, то записаны с оы»бьол'

МГС АЫ,А!. МОЧ АХ,[ВХ»й] БН!. (ВХ),1 *ПО АХ,'Х' АРС ХХВХ] МОУ ВЯУР Ц Е Х,0

9. у»выть значения рспжтрв А!. (в виве знаково»с лес»ты пыго числа). и флагов ср, Ор н Бр, которые олн будут

!ссггь псле»мпслненис слелуюших лвух поыянл:

пот м« -Зсг Отвсп А1 Ф .()

анн Аг„1 60

10, Опрслелитм что такое е;атическз» н ли«ам»»се»я» сань по ленным мсжлу модул»«н нз Асссмбмра,

Отмп

1

Распознанный текст из изображения:

Фамилия И.О.

'" 1. Написать для учебной машины УМ-3 программу, которая вводит массив из 300 вещественных чисел и выводит

умму тех из этих чисел, которые больше предлоследнеео числа во введенном массиве. В программе длиной не более 14

трок необходимо использовать мнемонические обозначения кодов операций. (Ответ на обороте,)

2. Пусть в центральном процессоре используется конвейерный способ выполнения команд, при котором параллельно

выполняются следующие 6 этапов; 1) чтение команды, 2) дешифровка кода операции, 3) вычисление исполнительных

адресов, 4) чтение операндов, 5) выполнение операции, 6) запись результата. Считая, что иа каждый иэ этих этапов

тратится 1 единица времени, и что вначале конвейер был свободен, определить, сколько времени будет затрачено на

выполнение следующего фрагмента программы: виЬ ах,Х[в1] Ответ (число единиц времени) = адй Ьх,ах 1 хог Х[Й],Ьх

3. Дать определение мультипрограммного режима работы ЭВМ, перечислить все аппаратные средства ЭВМ,

необходимые для работы в мультипрограммном режиме. «Ответ на обороте.)

-] 4. А 0В?;беззиака

В 0% ?; соэнаком ~ ~с„х ~~,'~

Рассматрилая значение А как число без знака, а значение ~

В как киоко со скоком, пописать справа от вопроса ~ П к ' ~~ ~ ~.ц'

оманды «не более 8)„реализующие присваивание

В:= (В+А) йч 400. Считать, что при сложении ~йлЮ~

Р".' 'Р' 'т'Р ~н

переполнения не будет. Ю~

1„и.;' «, «-"

!

1

к к, в гт

Кт вт

4 6. Описать близкую функцию с именем Ча1ое, которая получает в качестве параметра адрес начала некоторого гмента памяти, лелеянный на 16. Функция выдает в качестве результата знаковое целое число, равное удвоенному начению байта с адресом 633 в этом сегменте. Функция должна выполнять стандартные соглашения о связях. (Ответ на обороте,)

4 7. Описать макроопределение с заголовком Л)1Р шасго 1.Ь1, М «где 1.Ь! — параметр-список <Х1, И2, ..., Ир явно

заданных знаковых чисел, а М вЂ” метка). Макроопределение делает переход на метку М, если значение регистра АХ

отлично от всех отпицательных чисел иэ параметра-списока 1.Х или если в 1ЛЧ нет отрицательных чисел.

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

(Ответ на я!бороте,)

~ох оТЖ-"Ф~

8. Пусть описана переменная Х ЭВ ?

Из указанных ниже команд вычеркнуть те, что записаны с ошибкой;

М1Л. АХ,ВХ 1.БА СХ,[31] ЗНЕ [131],1 А00 В1.,[ВЦ ЯЗВ Х,[ВХ] МОЧ МОИМ РТВ. Х,О

+ +,

9. Выписать вид внутреннего машинного представления байтов с адресами Х и Х+1 в двоичном нли

шестнадцатеричном виде;

Х йв — 2046

Вид байта с адресом Х

Вид байта с адресом Х+1 =

10, На каком этапе компиляции ассемблерной программы выявляется ошибка "неописанное имя"? Ответ и его

обоснование привести ниже на этой стороне листа.

5. Х ЭФ? Содержимое Х трактуется как дата в упакованном виде: левые 5 битов — число (1,.31), следующие 4 бита — номер месяца (1 ..12) и правые 7 битов — две последние цифры года «0..99). Выписать справа от вопроса команды «ие.более 6) для перехода на метку В13ММЕЕ, если в Х хранится летняя дата, Значение Х не менять.

1 1~.с-о'~ к /Н~

й.и.~~ У Л,

, ~ф~',~.„~~,

~~ $

Б Я.Х

~ ~ф~ЯРР С ~:~'иЛ -г

'р ° ~,'

2

Распознанный текст из изображения:

Фамилия И.О.

Грриия

1. Написать десятичное число, которое выведется после выполнения фрагмента программы:

точ сх,-254 1

жоч аж, сх Огвет =

$впзХ аЬ 1

вЫ ах, еХ !

оиФ4аФ асс !

2. Написать справа от вопроса фрагмент программы

на Ассемблере (не более 8 команд), который выводит ~по ояййлФ) остаток от деления целого беззнакового числа размером в слово, расположенного по физическому адресу 123456, на число 19 (адрес дан в десятичной форме записи)

3. Записать справа от вопроса фрагмент программы

~не более 7 команд) для одноадреской учебной

машины, реализующий оператор присваивания

У: 2~Х/~У при следующем распределении памяти: ~

Х вЂ” 0100, У вЂ” 0101, Использовать мнемонические

коды операций: ЧТ вЂ” чгение из памяти на

сумматор, ЗП вЂ” запись из сумматора в память,

СЛ вЂ” сложение, УМН вЂ” умножение, ДБЛ вЂ” деление.

5. Пусть описан массив Х[0..99] знаковых целых чисел

Х с1Ь 100 с1пр (?)

и пусть в регистре Ьх находится число 1 от 0 до 99.

Записагь справа от вопроса минимальное число команд,

реализующее присваивание ах: = 1.*Х [~ ~ 1

б. На каком этапе обработки программы на Ассемблере в поле с именем Ра~ а команды

БТаг1: шоч ах, Ра~а

будет занесено числовое значение адреса начала сегмента Ра~а, деленное на 16. Привести обоснованный ответ на обороте.

7. Из указанных ниже команд на Ассемблере вычеркнуть те, которые записаны с ошибкой (при

описании переменной У бы 7):

аЬ1 101Ь,с1 шоч ах,У-З асЫ 40[Ьх],30 таоч Ъхр [зр+б~ сшр схр 'Ф' [Ьх1

8. Написать макроопределение с заголовком.

Мах3.лиза васго Х,Х

Это макроопределение должно присваивать параметру Х наибольшую из знаковых величин Х и У. Параметры Х и У должны быть только. переменными одинакового размера в байт или слово. Макроопределение обязательно должно проверять безличие и допустимость своих параметров, выдавая необходимые диагностики об ошибках. (Огвет на обороте).

4. Перечислить достоинства и недостатки независимой трансляции модулей на Ассемблере, Огвет

привести на обороте и обосновать.

PrakExam2004

Распознанный текст из изображения:

!М ржи ж !. (04.062004)

Групгга Фямгглггя И.О,

М.З и ! мм, к си»выла кло г

в и массив из 300 колы» Фсел, нщм вы»ть

!. Нанпсзть лля у'мбиой мажжты У рп ра у, сгори»

умму воск мсм»нтов ыюго мысина с нсчвтиыми ипдвксв ( рв

и кевин (зто первый, трети и т.л.

ни«с»кис ойомычспнв лилов опсрапи .

й. (Ответ на ойорожЗ

ма;миной ис бочсе ]3 строк пеобхолнмо нсжжмоввть миемон

ВВМ (отпп привести низе иа втой жв оп!роне лпыв)

2. Дать анре»алев»с мультипрогрвммного режима рабюы . (о

3. длс учебной тря»адресной ЗВм ум.З кать опрслсиение с»служим» помтий. (Ог»ст нз обороте)

в) Адрес»чейкн. 6) Мажннное слово, в), Код опврвпии.

4. Пусть сегментные регистры нмсыт закис зла»синя: ] Отвятг

СБ ]6660; ПБ 25550; 55-34440; ВБ 43330, Выписать небсма тРБ»

прсдлоимния Ассемйлергг, котьрые пересылыот сод»рваное Бвйж памяти

с абсолют!Фм алрссом 3443Ап в байт памяти с абсапотгялм ядре»он 355500 '

5. ПУсть Н - номеР гРУппы, в котоРой Вы сайчас ' по«пнт -300 0

уьвтссь()0]302нтл) Для прпввлвииогоспрвва ! мпч сх,вн

фрзгмс пс грогрвммы на Асссибжрс опрслежпь, что ! лак ах, с1

бу»»маслено к мвкрекомвнлс оис!.пн.

е»

Ззю1 я»

Ответ. оикзпс пх

У

б. Опнсзп, 6»итьуы пропедуру с именем спаес, каторз» ~золу ~ает в кпчестве паря«стоя адрес ~срс«есной рымероы

в славе из сегмента Милых. Пронсвурв приск»и»вот »той псрсмсннов значение частног с «] колени» ВВдйдд(0 «вснп ис.- ход»пжгосв в »»ннов мсрсмснпой. па число )3. проне»ура дптзю~а выгголгыть стзнлартиыс соглажениа о свяжх (Ожет на

обороте).

т, при»сети макроопределение с и»жнем лу" ев, обре!денна к которому имеет вия, показан~лей ниже слеза (здесь в

п»рвмстрс спнсмг ]~1,  — има, «; зван яовросв 2 илн числе, ммвду ж в т, стоит Брдфй(), Это чвкроопрелеясниз лолжно

формнгю»ать макрсрвсжнрзгим, показанное ниже справа. Макраопрмаленке»е амгппю проверять нани»не и прввилг

нос~ь. ипоа сани» пнрамс\рои. (Ответ )поборете).

х. ЗЬ

Нуснв <хт т„.,к„т„> +

хь 4Ь «»

Э.Пустьолнсзив срсмснизяХ В)Ч !

И* у»а»анны» нине намкнл вычеркнуть тс, то записаны с оы»бьол'

МГС АЫ,А!. МОЧ АХ,[ВХ»й] БН!. (ВХ),1 *ПО АХ,'Х' АРС ХХВХ] МОУ ВЯУР Ц Е Х,0

9. у»выть значения рспжтрв А!. (в виве знаково»с лес»ты пыго числа). и флагов ср, Ор н Бр, которые олн будут

!ссггь псле»мпслненис слелуюших лвух поыянл:

пот м« -Зсг Отвсп А1 Ф .()

анн Аг„1 60

10, Опрслелитм что такое е;атическз» н ли«ам»»се»я» сань по ленным мсжлу модул»«н нз Асссмбмра,

Отмп

exam

Распознанный текст из изображения:

Н р р) Е И.О.

У««затъ, «*кос «кассовое все«та«нос свело прсютав«эст байт 99И «дранок «одл н га«ос - в «оиолвктсаь«о«

гв

7 Опмтюс на еисдуюшие аопресм: в) Ета такое расслоение шнративмой памкпр б) В чем выпзда от р оса мшя памятиу «) Всрмо «и, по при раепюс«ии намыв «озмовси оюю«рсмваньй дшт)п к юобым лву«(раз«ичным) ачслкаи паизпб

3 Вьдшсзть коые«юл 0(лййаЮЮ, кс'горы«

кызыла«сап «оя буяны О в байт «смюа с

«бсомопшк а«рогом !АВСРЬ. (Момва

и г, зьзоюпь любыс рсгиакзьс.)

4 и ушъ рстисср 175 )юяыимт из кача«о есзысита Р (см. с«саэ), Опрслсыпь значение рыметра АН поею

ыполнсння кома«к уквзвнвьп птрию.

Р БЕОМЕНТ АББПМЕ Р5:Р

ХРВ(,2,3 ЕЕАВХЧ

Т РВ 4,5«К7,8 1.ЕА Р1,Х

Р Н4РБ МОЧ АН,Э(В)П-ЭЕН!

От«Юг АН=

5 Изв оп!о, по в ПК команды условного псрсюда

реализуют талька короткие псрсвюм. Опиппь

«рос

)Н.ОНС М (М ° нотка),

кагор ш ршлизуст действие «аманлы )Е в шсучю

ллинног исрсвша.

6. Пред«оззпе длз ПК такое лрсдсгзввсюм югичсския значений пос и (аис в вид б вт, лрн которо и амды

НОТ, АНР м Ой прап!лспо усамябют юючсскмс ошсрндю стрип«мы, ювъкаадвш и юпьюышии

оотвст ливио и к торос .тяичаетев етщ сдшаавсюш (е!ш' и (ЮЬ. п«с = бррй (Оюй эмбер об к«о«ать.)

7 В ши атък «рорасшиссннеиля сююкомвнвмММ25прнеюкюш мопр десеикнмжро ММ.

ММ МАСРО КЗ. О2ДЮ) ММ 2.5 ==ь

!Р Кс-! НЕ 1.

Аясъ РВ ") ЛС"

ЕНТНР

(РР!Р К.г .еО

ВАК Рю К РРР(КЙК!

ЕНР!Р

ЕНРМ

8 В прагра» с нс «зыке Турбо П саюь и» отса следуюшю опюэюс (бямзкой) лропедурм Н:

сУ(М ШС= О.. 400; Оувю: «ко

ъ= палов) с(шт;

рпссшпс Н( аг «юг ппц.

ъср е[фю юб;

Эзк юпь в ятом описав«и' опер тор мои«у ь«рв и юл

* и бюрную втек«у (ма перетер а), сэсриашую не 6 ЛМ 5 Л мшд «~Юбяяра 0

0. Вью«есть т бяюы якп тТИ), копрую после первого про ода еошэвит сгембл р при трансляпии с«с«умы го

алую;

РОБЕ!С )..Н Дурю:

С 5ЕО МЕНТ

А55ОМЕ С5.С 7

АРВЕ

1 МОЧ АХ.А

КЕТ

Н ЕОО 7

С ЕНРБ

ЕНО

!О Олнаюфуюошйкомпонеашик» -рсдзктнр взю м м лул ю и юл Оп п,ън ширмы а)В ме ы е

т в 07«аляму б) Почему ю «с мо«етаыпсвюпь апсмбдЮ7

и

е

Задачи к экзамену неизвестно какого года

Вариант 1 (199? год)

1. Указать значение регистра AL после выполнения следующих команд :

MOV AL, 131

ADD AL, 50

JL M1

MOV AL, 1

JMP M2

M1: MOV AL, 0

M2:

2. Имеется описание массива Y [0..55] из чисел без знака :

Y DB 56 DUP(?)

и пусть в регистре BX находится некоторое число k (0<= k <= 45).

выпишите команды (не более 4), реализующие переход по метке M

при выполнении условия

Y[k + 10] < k + Y[10]

3. Вычеркните неправильные адресные выражения :

X[0], SI + 2, X[DI] + 4, [BX] + X + [BP], X[CX],

[X + 2] + [BP + SI], [BX],

где X имя переменной X DW ?

4. Выпишите команды (без строковых команд и индексов повторения),

выполняющие то же действие, что и

REP MOVSB.

5. В стеке записано не менее 10 слов, причем десятое (сверху) из

них - это адрес (смещение) некоторого байта из сегмента памяти,

на начало которого указывает регистр ES. Выпишите команды,

которые записывают 0 в этот байт и при этом сохраняют значения

всех регистров и не используют переменные.

6. Выписать таблицу общих имен (ТОБЩ) и таблицу перемещаемых адресов

(ТПА), которые построит ассемблер при трансляции следующего

модуля :

PUBLIC X, Y

QSEGMENT

XDW 2 DUP(Q)

YDW Z, Q

ZDB ?

QENDS

END

7. Укажите ошибку, которую зафиксирует ассемблер при трансляции :

CSEGMENT

ASSUME CS:C

XDW 1

BE: MOV AX, Y

ADD AX, X

Y DW 2

C ENDS

как ее можно исправить ?

8. В арифметических командах ЭВМ (УМ-С) не указывается ни одного

адреса. Как в этих командах определяются операнды.

Вариант 2 (199? год)

1. Сравните одноадресную (УМ - 1) и стековую (УМ - С) ЭВМ по следующим

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

памяти, занимаемой эквивалентными программами.

2. Выпишите значение регистра AL (HEX), и флаги CF, OF, ZF и SF после

выполнения следующих команд :

MOV AL, 20

ADD AL, 120

3. Имеется описание массива X[0..99] :

X DB 100 DUP(?)

и пусть в регистре DI находится некоторое число i (0<=i<=99). Выпишите

команды (не более 4), реализующие присваивание

x[24] := x[i] + i

4. При следующих значениях регистров

DS = 2222h, ES = 3333h, SS = 4444h, CS = 5555h, SI = 0F00Fh

определите абсолютный адрес первого операнда команды

SUB [SI + 3030h], AH

5. Вычеркните неправильные адресные выражения :

4[BH], [DI + Y + 2], 6[Y], Y[DI][SI], [SI] + Y[BX], [BP] + [DI],

BX[SI]

6. Выпишите команды (с командой CMPSB, но без префиксов повторения),

выполняющие то же действие, что и

REPE CMPSB

7. В стеке записано не менее 2х слов. Выпишите команды, которые меняют

местами два верхних слова стека и при этом сохраняют значения всех

регистров и не используют переменные.

8. Предположим, вашей программе приходится несколько раз проверять,

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

символов (например : X - цифра?, Y - малая лат. буква?). Как вы

Опишете это повторяющееся действие - как макрос или как процедуру?

9. Выпишите макрорасширениедля макрокоманды M1 2 при следующем описании

макроса M1 :

M1 MACRO K

JMP W&K

IF K + 1 EQ 3

X DB '&K + 1'

ELSE

W2 MOV BX, K&K

ENDIF

Вариант 3 (199? год)

1. Указать значение регистра AL после выполнения следующих команд:

MOV AL, 131

SUB AL, 50

JGE M1

MOV AL, 10

JMP M2

M1:MOV AL, 20

M2:

2. Имеется описание массива X[-10..10]:

X DW 21 dup (?)

и пусть в регистре DI находится некоторое число i (0<=i<=10).

Выпишите команды (не более четырех), реализующие присваивание

x[i]:=x[0]+i. Можно изменять значение любых регистров.

3. Вычеркните неправильные адресные выражения

4[BH] [DI+Y+2] 6[Y] Y[DI][SI] [SI]+Y[BX] [BP]+[DI] BX[SI]

где Y - имя переменной Y DW ...

4. Выписать таблицу общих имен (ТОБЩ) и таблицу вхождений внешних

имен (ТВНЕШ), которые построит ассемблер при трансляции следующего

модуля:

EXTRN P: FAR

PUBLIC A,C

SSEGMENT

ADB 100H DUP(?)

BDW P

CDW B, SEG P

SENDS

END

5. В стеке записано не менее двух слов. Выпишите команды, которые

удаляют из стека второе (сверху) слово, и при этом сохраняют

значения всех регистров (кроме SP) и не используют переменные.

6. Укажите ошибку, которую зафиксирует ассемблер при трансляции:

CSEGMENT

ASSUME CS:C

XDW 1

BEG: MOV AX, Y

ADD AX, X

YDW 2

C ENDS

Как ее можно исправить?

7. Выпишите команды (без строковых команд и без префиксов

повторения), выполняющие то же действие, что и пара команд

REP MOVSB,

при DF = 0.

8. В арифметических командах стековой ЭВМ (УМ - С) не указывается

ни одного адреса. Как в этих командах командах определяются

операнды.

Вариант 4 (199? год)

1. Пусть в ЭВМ имеется кэш-память, размер которой - 16 блоков по

16 машинных слов в каждом и в которой используется алгоритм

прямого размещения блоков (содержимое ячеек с шестнадцатеричными

адресами xyzw0, xyzw1, ... xyzwF размещается в блоке с номером w).

Пусть на чтение одного слова из кэш-памяти в центральный процессор

тратится 1 единица времени, а на чтение одного блока из оперативной

памяти в кэш-память - 10 единиц. Считая, что в начале кэш-память

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

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

следующими 16-ричными адресами:

5F045, B082A, 67049, B0870, B0821, 5F046, B0820, 5F04E

2. Считая, что перед выполнением команды PUSH 8[BX+DI] регистры имели

следующие значения:

DS=1234h, SS=0f900h, SP=7052h, BX=9999h, DI=6666h

Указать в 16-ричном виде абсолютные адреса ячеек "откуда" и "куда"

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

3. Из указанных команд вычеркнуть те, что записаны с ошибкой

PUSH CS MOV ES, DS ADD [SI], 5

LEA AX,[BX] XCHG [SI],[SI+3] MUL 10

4. Ответить на следующе 2 вопроса: на каком проходе и как именно

ассемблер выявляет ошибку "повторное описание имени" (одно

и то же имя описано дважды) ?

5. Выписать таблицу общих имен (ТОБЩ) и таблицу перемещаемых адресов

(ТПА), которые построит ассемблер при трансляции следующего

модуля :

PUBLIC X, Y

QSEGMENT

XDW 2 DUP(Q)

YDW Z, Q

ZDB ?

Q ENDS

END

6. Выписать команды (с командой CMPSB, но без префиксов повторения),

выполняющие то же действие, что и пара команд

REPE CMPSB.

Можно использовать регистр AL в качестве вспомогательного.

7. При следующих значения регистров

DS = 2222h ES = 3333h CS = 5555h SI = 0F00Fh

Определить абсолютный (20 - разрядный) адрес 1-го операнда команды

SUB [SI+3030h], AH

Указать формулу вычисления этого адреса.

Экзамен 2002 Вариант 1

1. Дать определения понятий:

а) Абсолютный адрес

б) Неявный операнд

в) Близкий переход

2. В ЭВМ типа УМ-2 используется расслоение памяти на 16 банков, причём ячейка с номером A попадает в банк с номером (A mod 16). Также используется конвейер из 6 этапов: 1) Чтение команды 2)Дешифровка команды 3) Чтение первого операнда 4) Чтение второго операнда 5) Выполнение команды 6) Запись результата (на место первого операнда). Считая, что каждый этап работы конвейера занимает 1 единицу времени и в первоначальный момент времени крнвейер пуст, вяснить, сколько времени займёт выполнение следующих команд (слева - адреса команд, 01 - код сложения, все числа - шеснадцатиричные):

0000: 01 5411 8073

0001: 01 0148 5411

0002: 01 6691 8073

3. Определить значения флагов SF, CF, OF после выполнения следующих команд:

mov AL, -56

add AL, 160

4. T db 256 dup (?)

Пусть T - символьная строка переменной длины (длина указана в первом байте и, соответственно, не привышает 255 символов). Выпишите комады (не более 6), которые выполняют следующую задачу: если строка непустая, то записать на место последнего символа букву 'Т' (можно использовать любые регистры).

5. Пусть под сегмент стека в программе отведено 501h байт. Выписать команды (не более 11), которые решают следующую задачу: скопировать всё текущее содержимое стека (непустого) в область памяти, начинающуюся с адреса 31A80h (считать что эта область не пересекается ни с сегментом стека, ни с сегментом команд; можно использовать любые регистры, но нельзя менять SP).

6. Выписать макрос JDIF LN, M (здесь LN - это <l1,l2,...,ln> - последовательность чисел, заданных непосредственно; n>0; M - метка), который осуществляет переход на метку M, если AX отлично от всех отрицательных чисел последовательности или если отрицательных чисел в этой последовательности нет (никакие регистры, кроме AX, использовать нельзя).

7. Вычеркните команды, записанные с ошибкой:

div 5

lea BX, [BX]

mov ES, DS

;this one I forgot

add 800[SI], 15

sub 15[SI], 800

test 11b, CL

8. В программе на Турбо Паскале процедура ... {$F+} procedure P(var С:char); external; ...

описана как внешняя. Написать на ассемблерный модуль, в котором была бы описана процедура P, заменяющая символ С на символ chr((ord(С)+1)mod 256) (замечание: в языке Турбо Паскаль ссылки процедуре всегда передаются в виде seg:offs, причём seg записывается в стек первым).

9. Ответьте на следующие вопросы: а) Что такое внешние имена и чем они отличаются от других имён модуля? б) Как ассемблер узнаёт, что какое-то имя является внешним?

10. Пусть даны следующий загрузочный модуль и его заголовок (слева указаны относительные адреса команд; все числа - шеснадцатиричные):

(0) XX XX XX XX

(4) B8 00 00 8E

(8) XX XX XX XX

(A) XX XX XX XX

Длина программы 17

Точка входа 0:3

Начало и длина сегмента стека: 10 и 7

Таблица перемещаемых адресов:

сегментадрес вхождения

10 0:5

Пусть загрузчик выделил для программы область памяти, начинающуюся с адреса 27000h. Указать, какие изменения загрузчик внесёт в программу и какие значения он присвоит регистрам SS, SP, CS и IP.

Экзамен 2002 Вариант 1.Решение

Вариант: 1

Решил: Воронин Павел {a.k.a Pablito}

Группа: 110

Проверяющие: Кацкова О.Н и Пильщиков В.Н.

Оценка: 5

{баллов 54, но все найденные проверяющими ошибки исправлены}

1.

а) Абсолютный адрес - номер ячейки, ощитанный от начала оперативной памяти.

{звучит тупо, но это определение зачли как правильное :))}

б) Неявный операнд - операнд, местоположение которого заранее известно и потому в команде явным образом не указывается.

в) Близкий переход - переход внутри одного сегмента.

2.

Команды выполнятся за 11 единиц времени.

3.

SF=0, CF=1, OF=1

4.

lea BX, T

mov CL, [BX]

xor CH, CH

jcxz L

mov SI, CX

mov byte ptr [BX][SI], 'T'

L:

5.

mov AX, 31A8h

mov ES, AX

mov BP, SP

xor SI,SI

mov CX, 501h

sub CX, SP

L:

mov AH, [BP][SI]

mov ES:[SI], AH

inc SI

loop L

6.

JDIF macro LN, M

local L

irp P, <LN>

if P lt 0

cmp AX, P

je L

endif

endm

jmp M

L:

endm

{если задача была решена без использования условного ассемблирования - например, с помощью cmp и команд перехода - то за задачу ставили 0 баллов}

7.

неправильные команды:

div 5 {нельзя делить на непосредственный операнд}

mov ES, DS {если 1-ый операнд - сегментный регистр, то 2-ой - только r16 илиm16}

add 800[SI], 15 {неясен размер операндов, нужно использовать ptr}

test 11b, CL {1-ый операнд не может быть непосредственным}

правильные команды:

lea bx, [bx] {1-ый операнд - r16, 2-ой - адресное выражение, так что всё OK, правда смыслу, как в NOP :))}

sub 15[SI], 800 {800 может быть только солвом, поэтому ptr здесь не нужно}

8.

public P {процедура должна быть объявлена как общая}

CODE segment {название сегмента команд - только CODE или CSEG}

assume CS:CODE {в принципе, раз нет меток, то можно и без этого, но лучше написать - к этому придирались}

P proc far {процедура должна быть объявлена как дальняя}

push BP; сохраняем значение BP

mov BP, SP; устанавливаем BP на вершину стека

push DS; сохраняем значение DS

mov BX, [BP+6]; BX:=offs

mov AX, [BP+8]; AX:=seg

mov DS, AX; устанавливаем DS на начало сегмента, в котором расположена переменная

inc byte ptr [BX]; A:=chr((ord(A)+1)mod 256) {прикольно, но на асме смотрится проще, чем на паскакале}

pop DS; восстанавливаем значение DS

pop BP; восстанавливаем значение BP

{вызываемая из паскакаля процедура может гадить любые регистры, кроме DS, SS, SP и BP, так что на AX и BX мы можем положить, что я и сделал}

ret 4; возвращаемся и очищаем стек

P endp

CODE ends

end

{народ, не забудьте 2 последние строчки, на этом много кто порезался}

9.

а) Внешние имена - имена, описанные вне данного модуля (в других модулях). В отличие от других имён, их адреса (сегменты и смещения) ассемблер определить не может и потому записывает нули на места их вхождения и заносит их в таблицу вхождения внешних имён, которую выносит в заголовок объектного модуля.

б) Каждое внешнее имя, используемое в модуле, должно быть указано в директивах вида: extrn <имя>:<тип>{,<имя>:<тип>}.

10.

Изменится 4-я строчка, она станет такой: (4) B8 27 01 8E.

SS=2701h

SP=0007h

CS=2700h

IP=0003h

Картинка-подпись
Хочешь зарабатывать на СтудИзбе больше 10к рублей в месяц? Научу бесплатно!
Начать зарабатывать

Комментарии

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