Помогите разобраться с написанием лабораторно ? GNU asm Linux /(TASM)

Низкоуровневое программирование портов, микроконтроллеров и т.д.

Модератор: Andy

Ответить
Feniboot
Сообщения: 1
Зарегистрирован: 04 мар 2013, 18:27

Помогите разобраться с написанием лабораторно ? GNU asm Linux /(TASM)

Сообщение Feniboot » 04 мар 2013, 18:52

Добавить новый элемент массива, если его значение не равно значениям элементов заданного массива А(I). I = 1,2,..,5. Максимальная размерность массива А(I)=10. Добавляемые числа находятся в массиве B(J). J = 1,2,...,5.


код на C++:

#include <iostream>

using namespace std;

int main()
{
int A[10] = {1,2,3,4,5};
int B[5] = {1,3,2,5,7};
int n = 0;
bool flag = false;

for(int i=0; i<5; i++)
{
for(int j=0; j<5;j++)
{
if(A[j] == B)
flag = true;
}
if(flag==false)
A[5+n]=B,n+=1;
flag = false;
}

for(int i=0; i<5+n; i++)
{
cout<<A<<" ";
}

cout<<endl;

return 0;
}

Затем попробовал написать на ассемблере и вот что получилось (GAS Linux): просьба помидорами не закидывать, это моя первая программа

Код ASM:

Изображение

Ответить