Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > Помощь студентам


Ответ
 
Опции темы Опции просмотра
Старый 09.03.2011, 17:05   #1 (permalink)
lezg1n
Новичок
 
Регистрация: 09.03.2011
Сообщений: 6
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию Помогите написать код Ассемблера

Добрый день. Помогите написать код ассемблера на паскале для решения задачки на тему масивы.
суть такова:
есть масив А=[1..10] надо вывести масив В=А^2
А так же, не могли бы вы проверить правильно ли я написал паскалевский код?
Код:
Program lab;
uses crt;
var i,n:integer;
b,a:array[1..10] of integer;
begin
clrscr;
Writeln('Vvedite razmernist massiva:');
readln(n);
randomize;
writeln('Poluchen massiv:');
for i:=1 to n do
begin a[i]:=random(100)-50;
end;
Writeln('Poluchen massiv B:');
for i:=1 to n do
begin
b[i]:=a[i]*a[i];
Wroteln(b[i],' ');
end;
asm
P.S. Мне это надо сдать завтра утром, так что прошу не писать про учебники.
Заранее благодарен.
lezg1n вне форума   Ответить с цитированием

Старый 09.03.2011, 17:05
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

Эти темы имеют некоторые сходства с вашей, советую пролистать

Помогите написать программу
Помогите написать программу
Помогите написать программу на С++
Помогите написать алгоритм
Помогите написать пожалуйста

Старый 09.03.2011, 17:22   #2 (permalink)
Vladimir_S
Специалист
 
Аватар для Vladimir_S
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 26,358
Сказал(а) спасибо: 289
Поблагодарили 507 раз(а) в 165 сообщениях
Репутация: 91953
По умолчанию

Не совсем. Вот листинг с исправленными ошибками и "шероховатостями":
Код:
Program lab;
uses crt;
var 
 i,n:integer;
 b,a:array[1..10] of integer;
begin
 clrscr;
 Write('Vvedite razmernost massiva (<11): ');
 readln(n);
 randomize;
 writeln('Poluchen massiv:');
 for i:=1 to n do
  begin 
   a[i]:=random(100)-50;
   Write(a[i]:5);
  end;
 Writeln;
 Writeln('Poluchen massiv B:');
 for i:=1 to n do
  begin
   b[i]:=a[i]*a[i];
   Write(b[i]:5);
  end;
 Writeln;
asm
__________________
With Mozilla Firefox - straight to communism!
Vladimir_S вне форума   Ответить с цитированием
Старый 09.03.2011, 17:44   #3 (permalink)
kreol
Member
 
Аватар для kreol
 
Регистрация: 27.02.2010
Сообщений: 659
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 1312
По умолчанию

если
Цитата:
Сообщение от lezg1n Посмотреть сообщение
Помогите написать код ассемблера на паскале для решения задачки
я что-то не понял. вам надо писать просто на паскале или на паскале со вставкой асма?
kreol вне форума   Ответить с цитированием
Старый 09.03.2011, 18:22   #4 (permalink)
lezg1n
Новичок
 
Регистрация: 09.03.2011
Сообщений: 6
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Vladimir_S
спасибо за исправления
kreol
Мне нужно со вставкой асм
там надо написать код для массива В. То есть что бы было решение на паскале и решение на асм
lezg1n вне форума   Ответить с цитированием
Старый 09.03.2011, 20:10   #5 (permalink)
lezg1n
Новичок
 
Регистрация: 09.03.2011
Сообщений: 6
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Так кто нибудь знает что надо писать что бы решить задачку?
Просто очень надо, а то до пересдачи не допустят(
lezg1n вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Старый 09.03.2011, 21:30   #6 (permalink)
kreol
Member
 
Аватар для kreol
 
Регистрация: 27.02.2010
Сообщений: 659
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 1312
По умолчанию

вам показывали как с массивами паскаля работать во вставках ассемблера? если да то напишите, а то я нигде не найду...
kreol вне форума   Ответить с цитированием
Старый 09.03.2011, 21:37   #7 (permalink)
lezg1n
Новичок
 
Регистрация: 09.03.2011
Сообщений: 6
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Вот варианты заданий. Там есть, про массивы но я не фига не понимаю как их использовать в моем случае(
Яндекс.Народ
lezg1n вне форума   Ответить с цитированием
Старый 10.03.2011, 00:12   #8 (permalink)
kreol
Member
 
Аватар для kreol
 
Регистрация: 27.02.2010
Сообщений: 659
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 1312
По умолчанию

наверное смогу сделать только завтра. а то мне у самому задачки решать надо, чтоб их ...
kreol вне форума   Ответить с цитированием
Старый 10.03.2011, 16:16   #9 (permalink)
lezg1n
Новичок
 
Регистрация: 09.03.2011
Сообщений: 6
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Код:
Program lab;
uses crt;
var 
 i,n:integer;
 b,a:array[1..10] of integer;
 label m;
begin
 clrscr;
 Write('Vvedite razmernost massiva (<11): ');
 readln(n);
 randomize;
 writeln('Poluchen massiv:');
 for i:=1 to n do
  begin 
   a[i]:=random(100)-50;
   Write(a[i]:5);
  end;
 Writeln;
 Writeln('Poluchen massiv B:');
 for i:=1 to n do
  begin
   b[i]:=a[i]*a[i];
   Write(b[i]:5);
  end;
 Writeln;
asm
nov cx,n
mov si,0
m:
mov ax, word ptr a+si
mul ax
mov word ptr b+si,ax
add si,2
loop m
end;
writeln('Poluchen massiv b na Assrm');
for i:=1 to n do
write(b[i]:5);
Readln;
End.
Проверьте код пожалуйста.
lezg1n вне форума   Ответить с цитированием
Старый 11.03.2011, 22:29   #10 (permalink)
kreol
Member
 
Аватар для kreol
 
Регистрация: 27.02.2010
Сообщений: 659
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 1312
По умолчанию

ну она нормально компилится?
kreol вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ

Опции темы
Опции просмотра

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

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




Часовой пояс GMT +4, время: 08:34.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.