В прошлом году хотел перевести эту книгу, но так и не закончил. На самом деле я просто не понял некотрые вещи (например 64-битное деление). Готово около 90% + все иллюстрации переведены на русский язык. Может быть кому-нибудь пригодится...
Меня интересует файл инклюдов для фасма, где можно его скачать??? И ещё вопрос: Амдэшники пишут на фасме? Или тот код от автора перевода? В любом случае хотелось бы получить тот файл инклюдов.... Немного о странностях.... Есть статья "Бойся злобного луп", где говориться о том, какой он нехороший. Но потом смотришь на листинги, а он нет-нет да и мелькнёт . Или это статья тоже от автора. Неужели амдэшники так запутались в своих оптимизациях, что начали писать пургу?! И главный вопрос! Можно ли определить размер кеш линёйки??? Насколько я понял, он не всегда равен 64. Есть способы?
Код там был не на фасме - это я переделал Инклюды должны идти на диске к книге. Надо посмотреть на сайте amd. Сейчас быстренько пробежался по книжке, но loop нигде не увидел. Там почти везде jnz. Ну была правда метка mainloop. Насчёт размера кеш линейки х.з. Если хочешь универсальности нужно читать доки к конкретным процессорам и составлять таблицу размеров.
Похоже на сайте нету старых документов http://developer.amd.com/documentation/guides/Pages/default.aspx В оригинале про диск написано следующее
У меня его нету. Вот что нашёл http://www.koders.com/c/fid920594DE5A955BCDF23AC6D9B3B278D895D082EF.aspx?s=suck А диск видимо здесь http://cdrom.amd.com/21860/ Но там нет главной страницы. То есть надо знать полный путь к файлу.
Нашёл глюк в комментариях преобразования числа в строку. Там вместо странных цифр 261, 228, 230 должно быть 261, 228, 230.
Z3N Кэш-строка равна 64 байтам только на новых процессорах. Но более старых (например, AMD K8) она равна 32 байтам. Код для определения размера можно посмотреть, например, здесь: http://git.videolan.org/?p=x264.git;a=blob;f=common/cpu.c;h=23761ecf8f6fa765b32c5389a3db82f574ff801c;hb=HEAD