ассемблер цепочечные команды



Автор [::ХОЧУ машину...::] задал вопрос в разделе Другие языки и технологии

(Assembler) Нужно вывести массив в обратном порядке))))....при помощи цепочечных команд и std и получил лучший ответ

Ответ от Кирилл Сабитов[гуру]
Бедная девочка. Мне Вас жалко 🙂 lea esi, arr lea edi, arp rep movs arp, arr - вот тут вы копируете массив. 1) зачем? ! 2) в arp места не хватит для копирования. она всего 4 байта. затрете кусок чужой памяти. len EQU ($-arr)/4 - не надо делить на 4. получите в байтах длину. перед циклом сделайте: lea edi, arp mov ecx, len add edi,ecx-4 (есть команда такая? или разбейте так, чтоб оно сработало) в edi у вас будет указатель на последний элемент массива. .WHILE ecx>0 INVOKE HEX2ASCII, [edi] - а в какой участок памяти пишет ASCII? я не знаю макроса но надо проверить чтоб не мимо. WRITE_CONSOLE ebx, eax WRITE_SPACE dec ecx add edi, 4 sub ecx,4 sub edi,4 .ENDW вот так как-то.

Ответ от Stiven Dedal[новичек]
у цепочечных команд нет явных операндов есть только неявные: адрес источника в регистре ЕСИ адрес назначения в регистре ЕДИ

Ответ от 3 ответа[гуру]
Привет! Вот подборка тем с ответами на Ваш вопрос: (Assembler) Нужно вывести массив в обратном порядке))))....при помощи цепочечных команд и std

Что это в программировании?
Записать значение регистра "eax" в переменную "i" - mov i,eax // i:integer;
Записать значение
подробнее...
спросили в Железо
как понять 3 гигагерца? понятно что это частота процессооа, это что колебания чего то? (герцы)???
проц работает не сам по себе по сигналам внешнего источника
вот он и выдает импульсы с
подробнее...

Чем указатели лучше переменных?
Указатели - тоже тип переменных. Но идея понятна. Не лучше, не хуже. Хороши на своем месте.
подробнее...
спросили в Ассемблер
Проблема знака при умножении/делении (ассемблер) , MUL, IMUL, DIV, IDIV
В предыдущем ответе ссылка не рассматривает результат деления. Надо иметь в виду, что при делении
подробнее...
спросили в AT T ZX Spectrum
ассемблер под линукс и под виндовс различаются и чем?
Ассемблер в бóльшей степени зависит от процессора. Но это если писать программу, работающую
подробнее...
Ответ от 3 ответа[гуру]
Привет! Вот еще темы с похожими вопросами:
спросили в Ассемблер
Подскажите пожалуйста, что такое относительно-косвенная адресация в Ассемблере. Желательно с примером. Очень нужно!
Думаю подробно про способы адресации можно прочитать в любом учебнике по ассемблеру. В двух словах
подробнее...
спросили в DJing Ассемблер
объясните, пожалуйста, программу на ассемблер
Ассемблер какой-то незнакомый. Было бы хорошо, если бы было написано, к какому он процессору.подробнее...
спросили в Ассемблер
Ассемблер сегодня и завтра.
Чтобы заработать на жизнь - знания одного Ассемблера не хватит (не найти той интенсивности потока
подробнее...
спросили в MOL
1 чем отличаются команды MUL и IMUL 2 какую команду расширения нужно использовать при делении на 16-разрядное число
mul - это беззнаковое умножение
imul - знаковое
Если твой ассемблер 16-разрядный, а
подробнее...

Ассемблер, как именно работает команда movsb?
Если флаг направления DF=0, то работает так:
mov byte ptr es:[di], byte ptr ds:[si]; в
подробнее...

Ассемблер. подскажите что делает команда loop $
$ - это адрес текущей команды.
Это команда реализует бесконечный
подробнее...

Люди знающие ассемблер!!!Объясните более просто для чего нужна команда XLAT!!!
Я уже не помню, но по-моему она применяется для перекодировки значений.
Например, у вас есть
подробнее...
спросили в Ассемблер
Пожалуйста, подскажите, чем ассемблер отличается от машинного языка?
Катя, вот пример программы на ассемблере:

.data
hello:
.string "Hello
подробнее...
спросили в Стек
Ассемблер, команды
1 нет, можно поместить это значение в регистр и сделать push или сделать push непосредственно
подробнее...
 

Ответить на вопрос:

Имя*

E-mail:*

Текст ответа:*
Проверочный код(введите 22):*