Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Технологии > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 19.05.2015, 14:10   #1
YuliYu
Новичок
 
Регистрация: 19.05.2015
Сообщений: 1
Репутация: 10
Печаль Ассемблер. Написать процедуру объединения элементов множеств, заданных в виде массивов

Как дописать программу?

1.(Применение подпрограмм в вычислительных процессах)
Даны два множества заданные в виде массивов А(I) и В(I); I=1,2,..,10. Найти сумму (об’единение) множеств. C(J) - сумма двух множеств есть множество всех элементов принадлежащих А или В. Например, {1,2,3} U {2,3,4} = {1,2,3,4}. Задачу добавления нового элемента массива оформить в виде подпрограммы. Для этой задачи что-то пыталась написать:
Код:

model small
.stack 100h
.data
timeCx dw ? ;
A db 1,3,4,6,7,9,12,13,15,16
B db 1,2,4,5,7,8,10,13,15,17
C db 20 dup (0)
len equ 10;
.code

start:
push @data ;инициализируем ds физическим адресом данных
pop ds ;
mov cx,len ;
xor si,si ;
xor di,di ;
xor ax,ax ;обнулили

mov timeCx, 0 ; Количество элементов в массиве С пока нулевое
    mov si, offset A ; Указатель в массиве A
    mov di, offset C ; Указатель в массиве C
    mov cx, len ; Цикл будет по числу элементов в массиве A
copying:
    mov al, [si] ; Прочли элемент из массива A
    mov [di], al ; Записали его в массив C
    inc si ; Продвинули указатель в массиве A
    inc di ; Продвинули указатель в массиве C
    inc timeCx ; В массиве C стало на один элемент больше
    loop    copying ; Завернули цикл len раз
; Значение регистра DI тут можно дальше использовать
; как указатель для продолжения заполнения массива C
exit: 
mov ax, 4c00h
int 21h
end start


_____
Код программы нужно выделять (форматировать) тегами [CODE] (читать FAQ)
Модератор

Последний раз редактировалось Serge_Bliznykov; 19.05.2015 в 14:41.
YuliYu вне форума   Ответить с цитированием
Ответ

Опции темы

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вычислить количество положительных элементов заданных массивов V1(6) V2(12) V3(13) и вывести их отдельно ALABAMA Паскаль 15 23.01.2016 01:35
Представление множеств в виде функций I am Olik Общие вопросы C/C++ 0 15.06.2014 19:52
объединения массивов С++ Мироослав Помощь студентам 2 15.01.2014 09:11
Используя очередь, написать процедуру или функцию,для вычисления среднего геометрического элементов типизированного файла (Паскаль BumBum4ik Помощь студентам 0 04.01.2014 18:12
нахождения наименьшего общего кратного 4 заданных чисел, используя процедуру wrmarw Помощь студентам 9 18.04.2010 17:29


05:25.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru