Ответить на комментарий

rxt

Поддерживаю данную корректировку. Извините, но статья не интересна.
1. Если пишите на асме вставки, обязаны знать способ передачи параметров
1-ый EAX, 2-ой EDX, 3-ий ECX, дальше стек, а MulRolMix по кругу гоняет mov edx, edx.
2. Если пишите на асме, обязаны знать, как располагаются переменные в стеке, где база, и по какому смещению (-/+) обращаться к переменным.
Если игнорировать эти обязательства, то блок asm .. end; не более, чем для красоты. В ином случае, совсем не трудно будет решать такие задачи, как обратные вызовы с вложенными процедурами. Которые компилятор не в состоянии решить, а у некоторых гуру вызывает разрыв шаблона.

Автор поставил целью сделать это медленно, задачу выполнил, нареканий нет.

Вот результат из цели "Давайте сделаем это быстро" (кстати, неплохое название для Вашей следующей статьи ;)):

function Compare1(A,B: Integer): Integer;
begin
 if A > B then
  Result := 0 else
  Result := -1;
end;
 
 
function Compare2(A,B: Integer): Integer;
asm
  cmp EAX, EDX
  sbb EAX, EAX
end;

Ответить

  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Доступны HTML теги: <h1> <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Строки и параграфы переносятся автоматически.
  • You can enable syntax highlighting of source code with the following tags: <pre>, <code>, <asm>, <c>, <cpp>, <delphi>, <drupal5>, <drupal6>, <java>, <javascript>, <php>, <python>, <ruby>, <mytext>. Beside the tag style "<foo>" it is also possible to use "[foo]".

Подробнее о форматировании

CAPTCHA
Ведите текст с изображения. (вводить еще раз после предпросмотра а то не добавится комментарий)
Image CAPTCHA
Copy the characters (respecting upper/lower case) from the image.