ВУЗ:
Составители:
28
2.3.3 Использование процедур и команд организации цикла и ветвления,
команды с косвенной адресацией
Перед началом выполнения этого задания необходимо по электронному
справочнику (программа ASS) ознакомиться с форматом и функциями команд
LOOP, JMP, Jnnn, CALL, RET, PUCH и POP.
2.3.3.1 Проанализировать и выполнить программу расширенной пере-
сылки данных EXMOVE:
page 66,80
title exmove
stacksg segment para stack 'stack'
dw 32 dup(?)
stacksg ends
datasg segment para 'data'
name1 db 'abcdefghi','$'
name2 db 'jklmnopqr','$'
name3 db 'stuvwxyz*','$'
datasg ends
codesg segment para 'code'
assume cs:codesg,ds:datasg,ss:stacksg,es:datasg
begin proc far ;главная процедура
push ds
sub ax,ax
push ax
mov ax,datasg
mov ds,ax
mov es,ax
call b10move ;вызов процедуры
call c10move ;вызов процедуры
ret
begin endp
b10move proc ;начало процедуры
lea si,name1
lea di,name2
mov cx,09 ;счётчик цикла
b20: mov al,[si] ; начало цикла
mov [di],al
inc si
inc di
dec cx
jnz b20 ;переход на метку в20
ret ;выход из процедуры
b10move endp
c10move proc
2.3.3 Использование процедур и команд организации цикла и ветвления, команды с косвенной адресацией Перед началом выполнения этого задания необходимо по электронному справочнику (программа ASS) ознакомиться с форматом и функциями команд LOOP, JMP, Jnnn, CALL, RET, PUCH и POP. 2.3.3.1 Проанализировать и выполнить программу расширенной пере- сылки данных EXMOVE: page 66,80 title exmove stacksg segment para stack 'stack' dw 32 dup(?) stacksg ends datasg segment para 'data' name1 db 'abcdefghi','$' name2 db 'jklmnopqr','$' name3 db 'stuvwxyz*','$' datasg ends codesg segment para 'code' assume cs:codesg,ds:datasg,ss:stacksg,es:datasg begin proc far ;главная процедура push ds sub ax,ax push ax mov ax,datasg mov ds,ax mov es,ax call b10move ;вызов процедуры call c10move ;вызов процедуры ret begin endp b10move proc ;начало процедуры lea si,name1 lea di,name2 mov cx,09 ;счётчик цикла b20: mov al,[si] ; начало цикла mov [di],al inc si inc di dec cx jnz b20 ;переход на метку в20 ret ;выход из процедуры b10move endp c10move proc 28
Страницы
- « первая
- ‹ предыдущая
- …
- 26
- 27
- 28
- 29
- 30
- …
- следующая ›
- последняя »