Scott Cosentino teaches the fundamentals of ARMv7 assembly language programming using an emulator.
Learn assembly language programming with ARMv7 in this beginner's course. 🦾
ARM is becoming an increasingly popular language in the world of computer programming. It is estimated that over 200 billion devices contain an ARM chip, making the ARM language valuable to understand. By understanding an assembly language, programmers can have a better understanding of how code is compiled and run, making it possible to create more efficient programs. In addition to this, programmers can work at a lower level, allowing them to write code that interacts with hardware in an efficient manner.
✏️ Scott Cosentino created this course. Check out his YouTube channel: youtube.com/channel/UC7KBXRtv-EkiOFsRtpBxIbg
💻 Emulator for ARM programming: cpulator.01xz.net/?sys=arm-de1soc
⭐️ Course Contents ⭐️
⌨️ () Introduction
⌨️ () Intro and Setup
⌨️ () Emulation and Memory Layout
⌨️ () Your First Program
⌨️ () Addressing Modes
⌨️ () Arithmetic and CPSR Flags
⌨️ () Logical Operations
⌨️ () Logical Shifts and Rotations Part 1
⌨️ () Logical Shifts and Rotations Part 2
⌨️ () Conditions and Branches
⌨️ () Loops with Branches
⌨️ () Conditional Instruction Execution
⌨️ () Branch with link register and returns
⌨️ () Preserving and Retrieving Data From Stack Memory
⌨️ () Hardware Interactions
⌨️ () Setting up Qemu for ARM
⌨️ () Printing Strings to Terminal
⌨️ () Debugging Arm Programs with Gdb
🎉 Thanks to our Champion and Sponsor supporters:
👾 Raymond Odero
👾 Agustín Kussrow
👾 aldo ferretti
👾 Otis Morgan
👾 DeezMaster
--
Learn to code for free and get a developer job: freecodecamp.org
Read hundreds of articles on programming: freecodecamp.org/news
❤️ Support for this channel comes from our friends at Scrimba – the coding platform that's reinvented interactive learning: scrimba.com/freecodecamp
Why it's here
2 people recommend this
What people say. Recommended as a simple and clear introduction to ARM assembly for beginners.
L
u/LemonDisastersin r/C_Programming • Recommends
On “What is a Good Next Step After to Learn C in More Depth After CS50?”
The "mathy" point relates to your enjoyment of coding challenges. All of those will help you get better using C
That Linux book is going to be a good shout. Outside of textbooks that just tell you how circuits work, if you want to know more about properly under-hood stuff try this or this. But remember that the real-world applicability of using ASM is extremely limited these days. You can look into embedded programming if you want to really understand what is going on down low, and to prepare for that, look into doing things like bitmasking, bitshifting, and the basics of DSP and serial comms. Debugging hardware can be maddening but extremely rewarding.
On “How can I build my own operating system, from scratch?”
Ok my suggestion is based on if you have a previous understanding of how c/c++ work like pointers and those stuff and that you build something like a simple game engine or anything lowlevel
For learning assembly you have much option but i suggest watch that tutorial on freecodecamp link to this video it's for arm but it's simple and it make everything just getting clear for you after that you will have to move to x86 assembly which there are lot of them (GAS,NASM,FASM) i think the best one to go is nasm as it's simple and there are a kot of documents written in it for that i suggest tutorialspoint on the internet https://www.tutorialspoint.com/assembly_programming/assembly_environment_setup.htm
Then…