eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikaC++ ośla łączka › Re: C++ ośla łączka
  • Data: 2023-02-17 02:28:42
    Temat: Re: C++ ośla łączka
    Od: JDX <j...@o...pl> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    On 16.02.2023 13:20, Piotr Gałka wrote:
    [...]
    > On by potrzebował sizeof(funkcja).
    >
    > Ale jak próbuje to zrobić to dostaje 1.
    > Zasugerowałem, że może jak wstawi etykietę (przypomnieliśmy sobie, że
    > chyba w C coś takiego jest) na nawiasie zamykającym funkcję to uda się
    > policzyć różnicę między jej adresem a adresem początku funkcji.
    > Właśnie mi krzyknął (jego pokój jest piętro niżej), że z zewnątrz
    > funkcji nie ma dostępu do tej etykiety.
    Sugeruję jednak zapoznanie się ze skryptami linkera - zakładam, że
    używacie GNU toolchaina. W sieci jest mnóstwo przykładów jak odczytać
    adres początku danej sekcji, jej końca, jej długość i jak wyeksportować
    te dane do linkowanego programu.

    Hint: Można sobie zdefiniować sekcję i umieścić w niej tylko jedną funkcję.

    > Z adresem początku sobie radzi, choć mówi, że wskaźnik na funkcję jest
    > zawsze większy o 1 od prawdziwego adresu i ustalając fragment do
    > kopiowania on musi tę jedynkę odejmować.
    To podstawy:
    https://developer.arm.com/documentation/ka002971/lat
    est
    https://stackoverflow.com/questions/37004954/functio
    n-address-in-arm-assembly-have-one-byte-offset

    Przy czym należy dodać, że Corteksy M (M-profile) wspierają tylko zestaw
    instrukcji Thumb/Thumb-2, a ten nieszczęsny bit został tam zapewne
    dlatego, że ,,duże ARM-y" (A-profile i R-profile) oprócz zestawu Thumb
    wspierają też zestaw instrukcji ARM.

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: