Size: a a a

Ассемблер

2020 December 16

D

Den in Ассемблер
Ребят, а в разных потоках регистры ядер ведь разные? т.е например запись в eax первого ядра и второго ядра разные, т.е это ведь разные eax?
источник

DR

Dima Richev in Ассемблер
Да
источник

D

Den in Ассемблер
начал читать вот этот исходник, и у меня ощущение что invoke здесь используется для вызова процедур из соседнего потока для вывода его в основной? Всетаки для этого invoke использовать надо? call ведь не сможет вызвать процедуру которой нет в его потоке из другого потока?
источник

D

Den in Ассемблер
или я какую то ерунду сейчас спросил?
источник

A

Aleksandr in Ассемблер
Тут invoke - обычный вызов
источник

D

Den in Ассемблер
Aleksandr
Тут invoke - обычный вызов
а вообще разница между call и invoke какая в асме?
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮b... in Ассемблер
Den
а вообще разница между call и invoke какая в асме?
никакой, invoke это обертка для call, которая также пушит аргументы в стек, создает фрейм процедуры, а по выходу все восстанавливается по ret. используя call это все делается ручками
источник

D

Den in Ассемблер
Aiwan ╭∩╮ (òÓ,) ╭∩╮bot
никакой, invoke это обертка для call, которая также пушит аргументы в стек, создает фрейм процедуры, а по выходу все восстанавливается по ret. используя call это все делается ручками
О спасибо большое, теперь стало яснее!
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮b... in Ассемблер
Den
О спасибо большое, теперь стало яснее!
и еще, call это инструкция процессора, а invoke это директива/макрос ассемблера
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮b... in Ассемблер
Aiwan ╭∩╮ (òÓ,) ╭∩╮bot
и еще, call это инструкция процессора, а invoke это директива/макрос ассемблера
используя отладчик ты увидишь что все invoke преобразуются в call для процессора
источник

ST

Saenro T in Ассемблер
Den
начал читать вот этот исходник, и у меня ощущение что invoke здесь используется для вызова процедур из соседнего потока для вывода его в основной? Всетаки для этого invoke использовать надо? call ведь не сможет вызвать процедуру которой нет в его потоке из другого потока?
Вот во что превратился invoke
pushad не берём во внимание
источник

D

Den in Ассемблер
Saenro T
Вот во что превратился invoke
pushad не берём во внимание
а зачем он пушит нули? для выравнивания какого то?
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮b... in Ассемблер
Den
а зачем он пушит нули? для выравнивания какого то?
это параметры функции, открывай msdn и смотри что они значат
источник

D

Den in Ассемблер
потроха createThread я так понял лежат где-то в masm32rt.inc
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮b... in Ассемблер
Den
потроха createThread я так понял лежат где-то в masm32rt.inc
нет, в системных библиотеках
источник

D

Den in Ассемблер
Aiwan ╭∩╮ (òÓ,) ╭∩╮bot
нет, в системных библиотеках
хотелось до сути докопаться хоть посмотреть примерно как  ядра эти работают
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮b... in Ассемблер
Den
хотелось до сути докопаться хоть посмотреть примерно как  ядра эти работают
а смысл? тебе нужен результат, а не то как он получен
источник

DR

Dima Richev in Ассемблер
Den
хотелось до сути докопаться хоть посмотреть примерно как  ядра эти работают
Работу процессора, или конкретно работу потоков в ОС?
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮b... in Ассемблер
или изучай такую науку как "процессоростроение". лет так через 5-10 все будешь знать
источник

D

Den in Ассемблер
Aiwan ╭∩╮ (òÓ,) ╭∩╮bot
а смысл? тебе нужен результат, а не то как он получен
да просто для общего развития, наверняка там целые простыни каких-то синхронизаций по шинам данных чего то такое, просто посмотреть как все сложно :)
источник