PytanieDobre zasoby do korzystania z Assembly w Delphi?
Czy są jakieś zasoby, aby nauczyć się używać zestawu w Delphi?
Informacja Tło
Znalazłem i przeczytać kilka walnego zgromadzenia i zestaw instrukcji odniesienia (x86, MMX, SSE, itp). Ale trudno mi zastosować tę informację w Delphi. Ogólne rzeczy, takie jak jak uzyskać wartość właściwości klasy itp.
Chciałbym mieć opcję używać zespołu podczas optymalizacji kodu.
rozumiem:
- To będzie trudno pokonać kompilatora.
- Wysokopoziomowe techniki optymalizacji znacznie zwiększają wydajność o kilka rzędów wielkości w stosunku do optymalizacji montażu niskiego poziomu. (Takie jak wybór różnych algortów, buforowanie itp.)
- Profilowanie jest niezbędne. Używam Sampling Profiler do analizy rzeczywistej wydajności i liczby cykli procesora dla szczegółów niskiego poziomu.
Jestem zainteresowany nauczenie się montaż w Delphi, ponieważ:
- Nie zaszkodzi mieć innego narzędzia z przybornika.
- Pomoże to w zrozumieniu danych wyjściowych zespołu generowanego przez kompilator.
- Zrozumienie, co robi kompilator, może pomóc w napisaniu lepszego kodu paskowego.
- Jestem ciekawy.
Po prostu napisanie go w zespole, nie przyspieszy. Pisanie go w zespole w sposób mądrzejszy/szybszy, niż myśli kompilator, może. Funkcja polegająca na tym, że uzyskanie własności klasy prawdopodobnie nie zabiera czasu, manipulacje wartością właściwości są prawdopodobnie tym, co chcesz podjąć podczas montażu. – PtPazuzu
Nie sądzę, że istnieją jakieś książki Delphi-plus-asembler. Chciałbym pobrać wartości z właściwości klas, używając zwykłego kodu paskowego, zapisać wynik w zmiennej lokalnej, a następnie użyć odwołania do zmiennej lokalnej w moim wbudowanym asemblerze, na przykład. Powiązane pytanie do książek ogólnych na X86 asm; http: //stackoverflow.com/questions/4845/good-x86-assembly-book –
@PtPazuzu: Tak, manipulowanie wartościami jest celem. Ale najpierw pomoże zrozumieć podstawy. Ostatecznie szukam w kierunku SSE jako źródła potencjalnych przyspieszeń. Delphi w ogóle nie korzysta z instrukcji SSE? – Shannon