7085

Оператор цикла LOOP. Команды условных переходов

Лабораторная работа

Информатика, кибернетика и программирование

Оператор цикла LOOP. Команды условных переходов Цель работы: Научиться использовать оператор повторения и команды условных переходов. Задание: Составьте программу для подсчета выражения, где N - произвольное четное положительное число, без исп...

Русский

2013-01-14

143 KB

10 чел.

Оператор цикла LOOP. Команды условных переходов

Цель работы:

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

Задание:

Составьте программу для подсчета выражения , где N – произвольное четное положительное число, без использования в программе команд условных и безусловных переходов. Допускается использование оператора цикла

Порядок выполнения работы:

В Far Manager создадим файл 12.asm.

В файле 12.asm наберем программу, которая вычисляет выражение  и результат заносит в регистр АХ. Строки программы прокомментированы.

TITLE Program2 ;название программы

.MODEL small ;отводим под стек и под данные по 64Кб

.STACK 100h  ;отмечаем начало сегмента стека

.DATA ;отмечаем начало сегмента данных

N DW 4 ;определяем переменную N 

S DW 0 ;определяем переменную S

.CODE ;отмечаем начало сегмента кодов

main PROC

MOV AX, @data  ;копируем адрес

MOV DS, AX  ;сегмента данных

mov CX, N  ;задаем внешний источник повторений

L1:

push CX  ;Сохраним в стеке внешний источник повторений

mov BX,-1 ;задаем начальные значения регистров ВХ

mov AX,-1 ;и АХ перед началом внутреннего цикла

L2:

mul BX ;умножение регистров AX на BX результат в AX ((-1)^N)

loop L2  ;AX - содержит результат CX внутренних циклов умножения (-1)*(-1)

pop CX  ;восстановим СХ из стека для внешнего цикла

mul CX ;умножение регистров AX на CX результат в AX ((-1)^N*N)

add S, AX  ;накопление окончательной суммы в переменной S

loop L1 ;конец внешнего цикла, результат содержится в переменной S

mov AX, S ;сохранение окончательного результата в регистр AX перед выходом

MOV AX,4C00h ;выход

INT 21h  ;из программы

main ENDP

END main

Выполним отладку программу. 

Проверим значение регистра АХ перед выходом из программы с помощью отладчика Turbo Debugger.

Присвоим значения переменной N=4.

Значение регистра АХ перед выходом из программы в обратном коде равно FFFE. В прямом коде - 0002 т.е.  – в десятичной. Сравним со значением выражения . Таким образом, программа правильно вычисляет заданное выражение.

Присвоим значения переменной N=10.

Значение регистра АХ перед выходом из программы в обратном коде равно FFFB. В прямом коде -0005 т.е.  – в десятичной. Сравним со значением выражения .

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

Присвоим значения переменной N=126.

Значение регистра АХ перед выходом из программы в обратном коде равно FFC1. В прямом коде -003f т.е. – в десятичной. Сравним со значением выражения .

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

Вывод

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


 

А также другие работы, которые могут Вас заинтересовать

74002. Перестройка 1985 – 1990 годов 22.31 KB
  Именно эти меры положили начало развалу политической системы СССР поскольку именно партийная вертикаль обеспечивала реальное функционирование политической системы; советские органы были властью сугубо номинальной а потому оказались не готовы к выполнению возложенных на них полномочий. когда оппозиции удалось добиться отмены 6й статьи Конституции СССР закрепляющей особую роль КПСС в государственной системе СССР и внушительного представительства в ряде...
74003. Становление новой российской государственности в 1990-е годах 18.55 KB
  Распавшийся Советский Союз оставил весьма сложное наследство России в виде экономического кризиса всеобщего социального недовольства и наконец отсутствия реальной российской государственности. В условиях краха умеренной и консервативной моделей периода перестройки вполне естественной была победа весьма радикальной для России концепции демократического либеральнорыночного государства с ориентацией на западные страны. В принципе основные направления реформ к моменту их осуществления в России были уже испытаны в ряде государств Восточной...
74004. Основные этапы развития исторической науки в России XVIII – начале XX веков 20.07 KB
  Главною заслугою Миллера было собирание материалов по русской истории; его рукописи так наз. И исследования Миллера имели значение он был одним из первых ученых заинтересовавшихся позднейшими эпохами нашей истории им посвящены его труды: Опыт новейшей истории России и Известие о дворянах Российских. видное место трудами по русской истории занял и М.
74005. Основные этапы развития советской исторической науки 23.2 KB
  Начало новому этапу в развитии марксистской исторической мысли положили труды В. И. Ленина. Особенно большое значение для И. имела разработка Лениным теоретико-методологических основ общественных наук (в том числе исторической науки)...
74006. Влияние колониальной эксплуатации на традиционное общество в Индии в XIX – начале ХХ веках 23.77 KB
  Влияние колониальной эксплуатации на традиционное общество в Индии в XIX начале ХХ вв. Заключительным этапом средневековой истории Индии стало возвышение на ее севере в начале XVI в. Власть моголов в Индии укрепилась в годы полувекового правления Акбара 14521605 завоевавшего Бенгалию а вместе с ними и выход к морю. Таким образом в Индии XVIXVII вв.
74007. Кризис традиционной японской цивилизации в период сегуната Токугава(1603 - 1867) 20.34 KB
  Кризис традиционной японской цивилизации в период сегуната Токугава1603 1867 Политическое объединение Японии в начале XVII в. Однако объединение страны носило несколько условный характер так как в Японии продолжали существовать более 200 княжеств которые обладали известной степенью автономии. В Японии периода Токугава крупных городов насчитывалось семнадцать среди которых особое положение занимали Эдо Осака. С установлением власти Токугава в Японии широкое распространение получили конфуцианские идеи в интерпретации философа Чжу Си.
74008. Версальско-вашингтонская система международных отношений: становление, эволюция, кризис 32.17 KB
  Вильсон выступал за умеренность в требованиях к Германии, желая не допустить превосходство одной из них в Европе. Соединённые Штаты стремились усилить своё влияние в Европе. Именно с этой целью Вильсон предложил включить в Версальский договор статьи о создании Лига Наций
74009. Мировой экономический кризис 1929 – начала 30-х гг. Причины, региональные особенности, пути преодоления, итоги и значение 36.42 KB
  В противовес классическому принципу невмешательства государства в экономику была признана ведущая роль государства в регулировании национального хозяйства с целью повышения эффективности спроса населения на товары потребления Это основа от кот.
74010. Европейский тоталитаризм и авторитаризм 20 – 30-х гг.: общая характеристика и региональная специфика 34.61 KB
  Появление в межвоенный период группы фашистских госв где была чрезвычайно высока роль госва и насилия не было случайным стечем обстоятельств. Для фашистских государств характерно усиление регулирующей роли государства как в экономике так и в идеологии: корпоративизация государства посредством создания системы массовых организаций и социальных объединений насильственные методы подавления инакомыслия неприятие принципов экономического и политического либерализма. Авторитарная модель характерна для тех западноевропейских госв которым...