Większość programów montażowych korzysta z 4 rejestrów ogólnego przeznaczenia eax ebx ecx edx
, ale uważam, że dość często potrzebuję użyć więcej niż 4 rejestrów, aby wykonać moje zadanie z łatwością bez konieczności posiadania push
i pop
ze stosu na dużo. Ponieważ mój program nie ma intencji używania rejestrów FPU lub MMX do obliczeń zmiennoprzecinkowych lub ich "zamierzonego zastosowania", czy uważa się za dopuszczalne używanie tych dodatkowych rejestrów w swoim programie?Używanie rejestrów FPU i MMX jako "rejestrów ogólnych"
Np. za pomocą xmm0
dla licznika przyrostu pętli zwalniając rejestr ecx
, aby wykonać inne czynności.
Możesz zrobić prawie wszystko, co chcesz. Jeśli odkryjesz, że używanie rejestrów xmm jest szybsze niż przechodzenie do stosu, idź do niego. – Mysticial
@Mysticial Rzadko każdy mówi mi "Mogę robić, co chcę" w zakresie programowania. Kopię to :) – user99545
x86_64 ma 8 dodatkowych rejestrów do ogólnego użytku. –