Size: a a a

Ассемблер

2019 December 03

Н

Никита in Ассемблер
Точнее одно и тоже или разные числа дает
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮ in Ассемблер
Никита
Точнее одно и тоже или разные числа дает
разные
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮ in Ассемблер
я код скинул, там закоменчено обнуление р8, если раскоментить то все норм. в старшей части р8 вроде мусор находится
источник

Н

Никита in Ассемблер
Да он ложит в р8 датаворд
источник

Н

Никита in Ассемблер
Точнее только в ее нижнюю часть
источник

Н

Никита in Ассемблер
А фукция печатает все(8байт) число
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮ in Ассемблер
Никита
Да он ложит в р8 датаворд
не в р8 а в его младшую часть, старшую часть оставляет без изменения. но больше притензии к макросу инвоке, но в масм также вроде
источник

Н

Никита in Ассемблер
Никита
Точнее только в ее нижнюю часть
.
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮ in Ассемблер
читать надо почему так, там ясно понятно сказано почему так
источник

Н

Никита in Ассемблер
Aiwan ╭∩╮ (òÓ,) ╭∩╮
не в р8 а в его младшую часть, старшую часть оставляет без изменения. но больше притензии к макросу инвоке, но в масм также вроде
Нет тут ты типы непрвльно преабразуешь
источник

Н

Никита in Ассемблер
В тип qword пихаешь word
источник

Н

Никита in Ассемблер
Все ароументы полюбому qword но типы поменьше просто игнорируют верхнюю часть
источник

C

Crush_my_love in Ассемблер
Aiwan ╭∩╮ (òÓ,) ╭∩╮
да, [a] означает взять значение по адресу, а размер регламентируется либо приемником (в данном случае это 8 байт - rax), либо задание размера источника равным приемнику, mov  eax,dword[a]
И еще как я понял можно вместо преобразования записывать каждую переменную под размер нужного регистра? Так?
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮ in Ассемблер
Aiwan ╭∩╮ (òÓ,) ╭∩╮
да, [a] означает взять значение по адресу, а размер регламентируется либо приемником (в данном случае это 8 байт - rax), либо задание размера источника равным приемнику, mov  eax,dword[a]
исправил
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮ in Ассемблер
Crush_my_love
И еще как я понял можно вместо преобразования записывать каждую переменную под размер нужного регистра? Так?
ну эт от целей зависит. если мне надо флаг хранить, то для экономии места можн о1 байт выделить
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮ in Ассемблер
а можно и 8
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮ in Ассемблер
Crush_my_love
И еще как я понял можно вместо преобразования записывать каждую переменную под размер нужного регистра? Так?
но есть таккая команда (х86 точно, в х64 непомню) как
movzx eax,byte[a]
источник

C

Crush_my_love in Ассемблер
Aiwan ╭∩╮ (òÓ,) ╭∩╮
но есть таккая команда (х86 точно, в х64 непомню) как
movzx eax,byte[a]
ага, спасибо :)
источник

Н

Никита in Ассемблер
Ненапомните, непомню можно ли делать сдвиг по двум регистрам (еах:едх)
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮ in Ассемблер
поясни
источник