09.03.2011, 17:05 | #1 (permalink) |
Новичок
Регистрация: 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 Заранее благодарен. |
09.03.2011, 17:05 | |
Helpmaster
Member
Регистрация: 08.03.2016
Сообщений: 0
|
Эти темы имеют некоторые сходства с вашей, советую пролистать Помогите написать программу Помогите написать программу Помогите написать программу на С++ Помогите написать алгоритм Помогите написать пожалуйста |
09.03.2011, 17:22 | #2 (permalink) |
Специалист
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
|
Не совсем. Вот листинг с исправленными ошибками и "шероховатостями":
Код:
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 |
09.03.2011, 18:22 | #4 (permalink) |
Новичок
Регистрация: 09.03.2011
Сообщений: 6
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Vladimir_S
спасибо за исправления kreol Мне нужно со вставкой асм там надо написать код для массива В. То есть что бы было решение на паскале и решение на асм |
09.03.2011, 20:10 | #5 (permalink) |
Новичок
Регистрация: 09.03.2011
Сообщений: 6
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Так кто нибудь знает что надо писать что бы решить задачку?
Просто очень надо, а то до пересдачи не допустят( |
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
09.03.2011, 21:37 | #7 (permalink) |
Новичок
Регистрация: 09.03.2011
Сообщений: 6
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Вот варианты заданий. Там есть, про массивы но я не фига не понимаю как их использовать в моем случае(
Яндекс.Народ |
10.03.2011, 16:16 | #9 (permalink) |
Новичок
Регистрация: 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. |
11.03.2011, 22:29 | #10 (permalink) |
Member
Регистрация: 27.02.2010
Сообщений: 659
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 1312
|
ну она нормально компилится?
|
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
|
|