s54820
Ну как всегда у интела. То же самое, только короче. Пояснения про префикс уже нет, про sreg как destination уже не пишут, а вот про старшие биты пока ещё помнят.
Eugene
Ну уже хорошо, что это хоть есть.
vi'talij
movzx r32,r16 забьіли
https://youtu.be/xQU_uZ3JYWM
Anonymous
чушь
Anonymous
почему gdt первый дескриптор должен быть пустым
Anonymous
?
Anonymous
зачем разработчики intel так сделали
Ask
мы не разработчики интел
Anonymous
ну а догадки
Anonymous
не принимать это же на веру
Ask
верить или нет тебе решать
Anonymous
можно ли как то в idt добавить видео сервис прошивки
Anonymous
int 0x10
Anonymous
а вот нашел
Anonymous
https://stackoverflow.com/questions/26448480/bios-interrupts-in-protected-mode
R
R
учусь фасму, оказывается не особо сложнее си. Можно всю стандартную либу из msvcrt дергать
А можно и не дёргать.
Eugene
Dmitrij
а какую роль играют скобки <> в параметрах для invoke/cinvoke ?
Anonymous
вопрос такой при возрасте из pm в rm зачем в idt загружать адрес ivt и смещение
Anonymous
ведь это же не дескрипторная таблица а просто таблица с адресами
Dmitrij
ок, спс !
Eugene
Это механизм макродвижка.
Eugene
Можешь считать, что в RM IDT состоит из dword'ов в формате сегмент:смещение.
Anonymous
я этого не знал
Anonymous
вот такая книга есть)
Anonymous
#book
R
Anonymous
спасибо огромное за книгу)
Anonymous
хорошая книженка)
vi'talij
vi'talij
деление вьічитанием
И? В чём баттхёрт?
vi'talij
hacker's delight, chapter 10, integer division by constants
R
привет асемблерщики, может кто нибудь пояснить почему чтобы выровнять стек на 16 байт в начале функции делают sub esp, 8 ? Почему именно 8 вычитают, типа изначально выровнено все на 8??
Leon
Leon
Это для установки указателя стека туда где лежат параметры иди чтото в этом роде
R
везде коментят этот sub для выравнивания
R
но почему минус 8 ?
R
а не 7 например
Ask
а что в esp кладется?стек вернее
R
чему равен esp в точке входа?
R
почнму первая инструкция в точке входа sub esp, 8 ?
Ask
прям самая 1? это где такое
R
ну третья
R
Ask
так, а для чего функции используют стек?
R
утверджается что после вычитания 8 из начального значения esp он станет кратным 16ти. Почему так??
usernameak
R
это вснгда так?
Ask
нет
usernameak
usernameak
а, в энтрипоинте?
usernameak
Который _start или который main?
R
usernameak
usernameak
Если прям в самом-самом энтрипоинте, то там нет адреса возврата на большинстве платформ
Dmitrij
походу это под переменные argc и argv ...
usernameak
Поэтому на него не влияют
Dmitrij
ну да, сначала под них резервируется место, а потом стек выравнивается...
Dmitrij
хотя гоню...
usernameak
На стеке минимальное выравнивание на x86/арме/ещё чем - sizeof(void*)
usernameak
Однако calling convention'ы почему то требуют 16 байт на фрейм
Dmitrij
короче: так решил компилятор, и тут ничего не поделаешь ))
Eugene