Приветствую Вас, Гость! Регистрация RSS
Суббота, 27.04.2024


Главная » Файлы » Лабораторные работы » Лабораторные работы

«системне програмування»
[ Скачать с сервера (32.5 Kb) ] 04.04.2017, 11:12
Виконання 1.

program as7_1;
uses crt;

label loop_this,loop_exit;
var arr: array [1..10] of integer;
len: integer;
Nums: integer;
i: integer;

begin clrscr;
len:=10;
for i:=1 to 10 do
begin
writeln('vvedit element [',i,']');
readln(arr[i]);
end;

asm
mov bx,0
mov ax,0
mov si,0
mov cx,word ptr len

loop_this:
add ax,word ptr arr[si]
cmp ax,100
ja loop_exit
inc bx
add si,2
loop loop_this

loop_exit:
mov word ptr Nums,bx
end;

writeln('kolichestvo elementov:',Nums);
readln;
end.

Виконання 2.

program as7_2;
uses crt;

var arr: array [1..10] of integer;
len: integer;
Nums: integer;
i: integer;

{$L la.obj}
{$F+}
function NumBe100(len: integer; var arr): integer; external;
{$F-}

begin clrscr;
len:=10;
for i:=1 to 10 do
begin
writeln('vvedit element [',i,']');
readln(arr[i]);
end;

Nums:=NumBe100(len,arr);

writeln('k-st do 100:',Nums);
readln;
end.

.386
_Text segment word public 'text' use16
assume cs: _text

NumBe100 proc far
public NumBe100;
@len equ [bp+10]
@arr equ [bp+6]

push bp
mov bp,sp

lds bx, @arr

mov si,0
xor ax,ax
xor dx,dx
mov cx,@len

start:
add dx, word ptr [bx][si]
cmp dx,100
ja exit
inc ax
add si,2
loop start

exit:

mov sp,bp
pop bp
ret 6
NumBe100 endp
_text ends
End

Висновок.
Під час лабораторної роботи було закріплено вміння застосовувати асемблерні вставки у програмах мовою Паскаль.
Категория: Лабораторные работы | Добавил: opteuropa | Теги: Завдання, «системне програмування» скачать бе, лабораторна
Просмотров: 438 | Загрузок: 10 | Рейтинг: 0.0/0
Всего комментариев: 0
Имя *:
Email *:
Код *:
Украина онлайн

Рейтинг@Mail.ru

подать объявление бесплатно