Kod źródłowy assembler: https://raw.githubusercontent.com/HatimHibrahim/bubblesort_speedtest/refs/heads/main/asm/main.asm
Kod źródłowy java: https://raw.githubusercontent.com/HatimHibrahim/bubblesort_speedtest/refs/heads/main/java/main.java
kompilacja i uruchomienie:
- assembler (x86_64, linux)
> fasm main.asm main
> ./main
- java:
> javac main.java
> java main
Szukałem w internecie - co może być przyczyną, pytałem AI - ale odpowiedź nie jest dla mnie zadowalająca - kompilator javy stosuje optymalizacje kodu.
Sprawdziłem to - zdekompilowałem plik main.class - było ok - mniej-więcej jak w kodzie źródłowym, żadnych optimalizacji w stylu posortowania tablicy i wypisania wyniku.
Czy są jakieś rozsądne wyjaśnienia tego?