• Sniper17 (04.01.05 02:08) [0]
    Я вот чё-то не могу понять кто из нас двоих [я или компиллер] тупой?? =8-0

    program Untitled;
    uses mmx, SysUtils;
    var
     i: TMMXINTEGER;
     j: TMMXINTEGER;

     //i,j:Integer;
    begin
    {$mmx+}
     j := 0;
     for i := 0 to 1000000000 do
     begin
       j := j + 1 - 1 + 1 - 1 + 1 - 1 + 1 - 1 + 1 - 1 + 1 - 1;
     end;
    {$mmx-}
     WriteLn(IntToStr(j));
     readln;
    end.

    Почему выдаёт три ошибки?
  • Cobalt © (08.01.05 14:20) [1]
    Ну, если считать, что
    tmmxinteger = array[0..3] of integer;


    то ответ, на мой взгляд, очевиден :(
  • Sniper17 (08.01.05 16:56) [2]
    Чё-то не могу сообразить.. ж-(
  • DrPass © (09.01.05 00:06) [3]
    Тогда уже
    j[0] := 0;
    for i[0] := 0 to 1000000000 do
    begin
      j[0] := j[0] + 1 - 1 + 1 - 1 + 1 - 1 + 1 - 1 + 1 - 1 + 1 - 1;
    end;
    {$mmx-}
    WriteLn(IntToStr(j[0]));


    А вообще, я не знаю интеллектуальные способности компилятора ФП, но полагаю, что он все же не настолько тупой, чтобы делать этот цикл. Его бы даже Турбо Паскаль соптимизировал в ничто
  • Sniper17 (09.01.05 18:24) [4]
    Да ... вот только он выполняет всё как написанно ;-(
    А VC соптимизировал! ;-(
Есть новые Нет новых   [134430   +2][b:0][p:0.001]