Вопрос № 36714: Возможно ли использовать процессор AMD Athlon 64 для ассемблирования программ?. Или принципиально важно использование именно процессоров Intel для изучения языка ассемблера....Вопрос № 36731: Снова привет!
Я понимаю, Борис, что оптимизация под PPro и PMMX очень подходит для Pentium 4. Но всё же хотелось чего-нибудь под него и на русском, на английском запарился уже переводить:)
Хорошо, про setx.
Мне нужно убрать ветвление. ...
Вопрос № 36.714
Возможно ли использовать процессор AMD Athlon 64 для ассемблирования программ?. Или принципиально важно использование именно процессоров Intel для изучения языка ассемблера.
Отвечает: EPDSota
Здравствуйте, Бурматов Владимир Александрович!
Для ассемблирования можно использовать любой процессор.
И даже не AMD или Intel, а все существующие...
Если я правильно понял вопрос - то для изучения именно MASM, TASM, нужен х86 совместимый процессор, AMD - подходит.
--------- Открыть глаза навстречу солнцу
Ответ отправил: EPDSota (статус: Специалист)
Отправлен: 04.03.2006, 11:11 Оценка за ответ: 3
Отвечает: FreeManC
Здравствуйте, Бурматов Владимир Александрович!
Возможно, не принципиально.
Ответ отправил: FreeManC (статус: 2-ой класс)
Отправлен: 07.03.2006, 10:02 Оценка за ответ: 2
Вопрос № 36.731
Снова привет!
Я понимаю, Борис, что оптимизация под PPro и PMMX очень подходит для Pentium 4. Но всё же хотелось чего-нибудь под него и на русском, на английском запарился уже переводить:)
Хорошо, про setx.
Мне нужно убрать ветвление.
Что посоветуете SALC или SETX.
Может быть есть командочка типа SALC, только реагирующая на ZF?
Отвечает: Беляев Валерий (ака seaman)
Здравствуйте, Юра Устинов!
Возможно я туплю, но нет такой команды SALC. Команда SAL - это умножение на 2.
Команды с условием:
CMOVcc - перенос по условию,
FCMOVcc - перенос по условию числа с плавающей точкой,
LOOPcc - цикл по условию,
SETcc - установить байт по условию,
Jcc - ветвление по условию.
Также можно использовать:
CMPXCHG - сравнить два оператора, если равны - второй загружаем в первый, если не равны - второй загружаем в AL.
CMPXCHG8B - аналогично, но сравниваем 8 байт.
Также примыкают к этим инструкциям:
BTC, BTR, BTS - проверяем бит, устанавливаем флаг CF, соответственно биту, и изменяем бит (инверсия, обнуление и установка).
Ну а насчет оптимизации по pentium4, все-таки на английском проще найти. Имхо программист ДОЛЖЕН знать английский. Почитай:
http://developer.intel.ru/download/design/Pentium4/papers/24943801.pdf
или:
http://developer.intel.ru/download/design/Pentium4/manuals/24896612.pdf
Ответ отправил: Беляев Валерий (ака seaman) (статус: 3-ий класс)
Отправлен: 06.03.2006, 09:53 Оценка за ответ: 5 Комментарий оценки: SALC есть, я НЕ ВРУ! Не веришь поставь 0D6h и при прохождении через неё eax станет CF.