Programming for Wannabes. Part I

:)… that is what I meant… actually some microcontroller have a few bytes of RAM… but that is indeed a mistake. Thanks for pointing it out. I’ll fix it

2 Likes

I’ve been trying to learn ASM on my own but it’s hard to learn for a noob. C is a bit easier to understand and learn but at the same time it’s still hard. I am glad that someone is starting to teach the beginners. Cheers.:dragon:

1 Like

Great post @0x00pf. Really resourceful for the newcomers.

1 Like

Just a guess, but is it because of memory pagination?

1 Like

Nop… but quite close. We will come to it later :wink:

@oaktree It’s to make CPU’s life easier while reading the values and it also has to do with the arch you are working on. Google “memory alignment in C” or something close to that and check out this interesting paper http://www.catb.org/esr/structure-packing/.

4 Likes

Ah, @0x00pf and @_py: that’s sort of what I meant.

EDIT: @_py that was a wonderful article you linked. Anyone reading through this discourse should definitely spend time reading that tutorial as a supplement or to entertain curiosity.

4 Likes

In C, can’t you insert ASM with declaring _ asm _ or does it have to be declared with register? Something like that. :slight_smile:

@Valentine yes, google “Inline Assembly” for further info.

3 Likes

Just wanted to make sure.

Excellent tutorial! @0x00pf Can’t wait for part II! :stuck_out_tongue:

1 Like

Really awesome tutorial. A real must have for any aspiring programmer/hacker. I am a fan of how you’ve linked it all together, a lot of content is just C, or just ASM or just memory, but they all link, and I think you did a really good job of linking it all together.

3 Likes

This is actually better than the book I’m reading on ASM. Now I understand most of the things that I was missing. Thanks for writing this, it’s really really helpful :grinning:

6 Likes

Really enjoyed this writeup, the way you teach is quite effective! :smiling_imp:

1 Like

Nice username xD really fitting in with the 0x00sec theme :stuck_out_tongue_winking_eye:

4 Likes

Thank you, really nice tuto :slight_smile:
What would you think to add a few lines on how to install the required tools ?

Regards,

3 Likes

Thanks @boinclement. Let me know if the update works for you

1 Like

That’s great!, it is what I was thinking about.

1 Like

You should also make sure to specify what distro you’re using. Most of those build essentials are in the base and base-devel group on Arch, for an example.

pacman -Sg base-devel lists the pckages in that group.

3 Likes

I did. Thanks for telling us how to do it with Arch

4 Likes