Большой архив статей, книг, документации по программированию, вебдизайну, компьютерной графике, сетям, операционным системам и многому другому
 
<Добавить в Избранное>    <Сделать стартовой>    <Реклама на сайте>    <Контакты>
  Главная Документация Программы Обои   Экспорт RSS E-Books
 
 

   Программирование -> Assembler -> Оптимизация для pentium процессора


11. ЗАМЕНА СЛОЖНЫХ ИНСТРУКЦИЙ НА БОЛЕЕ ПРОСТЫЕ
==============================================
Вы можете заменять инструкции чтения/модифицирования и
чтения/модифицирования/записи, что бы достигнуть спаривания. Пример:
ADD [mem1],EAX / ADD [mem2],EBX    ; 5 тактов
Этот код можно заменить на последовательность, выполняющуюся за 3 такта:
MOV ECX,[mem1] / MOV EDX,[mem2] / ADD ECX,EAX / ADD EDX,EBX
MOV [mem1],ECX / MOV [mem2],EDX

Подобным образом вы можете заменять не спаривающиеся инструкции:
PUSH [mem1] / PUSH [mem2]  ; не спаривающиеся
Заменяем на:
MOV EAX,[mem1] / MOV EBX,[mem2] / PUSH EAX / PUSH EBX  ; всегда спариваются

Другие примеры неспариваемых инструкций, которые можно заменить более
простыми:
CDQ  разбивается на:  MOV EDX,EAX / SAR EDX,31
NOT EAX  заменяется на  XOR EAX,-1
NEG EAX  разбивается на  XOR EAX,-1 / INC EAX
MOVZX EAX,BYTE PTR [mem]  разбивается на  XOR EAX,EAX / MOV AL,BYTE PTR [mem]
JECXZ  разбивается на  TEST ECX,ECX / JZ
LOOP   разбивается на  DEC ECX / JNZ
XLAT   заменяется на   MOV AL,[EBX+EAX]

Если при разбивании инструкций не увеличивается скорость, то вы можете
сохранить сложные, не спаривающиеся инструкции, для сокращения длины кода.

Дальше



 

 
Интересное в сети
 
10 новых программ
CodeLobster PHP Edition 3.7.2
WinToFlash 0.7.0008
Free Video to Flash Converter 4.7.24
Total Commander v7.55
aTunes 2.0.1
Process Explorer v12.04
Backup42 v3.0
Predator 2.0.1
FastStone Image Viewer 4.1
Process Lasso 3.70.4
FastStone Image Viewer 4.0
Xion Audio Player 1.0.125
Notepad GNU v.2.2.8.7.7
K-Lite Codec Pack 5.3.0 Full


Наши сервисы
Рассылка новостей. Подпишитесь на рассылку сейчас и вы всегда будете в курсе последних событий в мире информационных технологий.
Новостные информеры. Поставьте наши информеры к себе и у вас на сайте появится дополнительный постоянно обновляемый раздел.
Добавление статей. Если вы являетесь автором статьи или обзора на тему ИТ присылайте материал нам, мы с удовольствием опубликуем его у себя на сайте.
Реклама на сайте. Размещая рекламу у нас, вы получите новых посетителей, которые могут стать вашими клиентами.
 
Это интересно
 

Copyright © CompDoc.Ru
При цитировании и перепечатке ссылка на www.compdoc.ru обязательна. Карта сайта.