Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Address of functions missing in dissassembly #90

Open
FuzzyLitchi opened this issue Jun 23, 2023 · 0 comments
Open

Address of functions missing in dissassembly #90

FuzzyLitchi opened this issue Jun 23, 2023 · 0 comments

Comments

@FuzzyLitchi
Copy link

The affected pages are these two.
https://docs.rust-embedded.org/embedonomicon/exceptions.html
https://docs.rust-embedded.org/embedonomicon/memory-layout.html

In chapter 2, it says "This is the disassembly of the .text section. We see that the reset handler, named Reset, is located at address 0x8." but that cannot be seen in the disassembly. In chapter 4 there is a similar mistake; the book says "The address of the Reset handler can be seen in the disassembly above, being 0x44." but this can't be seen.

A different oddity is that in Chapter 4 it says that address 0x0000_0045 means "jump to address 0x44". This lines up with what I expect from the explanation. We read the address, the lowest bit is 1, so function is run in "thumb mode" and we consider the actual address to be 0x44 since that is 0x45 with the lowest bit set to 0.
But then it says the address 0x83, which is 0b1000_0011, should be understood as 0x84 which is 0b1000_0100. This doesn't make sense to me.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant