Jump to ratings and reviews
Rate this book

The 8051 Microcontroller and Embedded Systems: Using Assembly and C

Rate this book
This book uses a step-by-step approach to teach the fundamentals of assembly language programming and interfacing of the 8051 microcontroller. It uses many examples to clarify concepts. Simple, concise examples are utilized to show what action each instruction performs, then a sample is provided to show its application. This text provides a comprehensive understanding of the internal organization of the 8051 registers and resources in a way that sheds the student's fear of assembly language. Whether students become designers of stand-alone systems or complex embedded systems, they will find this text a useful resource.

640 pages, Paperback

First published December 1, 2008

26 people are currently reading
329 people want to read

About the author

Muhammad Ali Mazidi

42 books38 followers

Ratings & Reviews

What do you think?
Rate this book

Friends & Following

Create a free account to discover what your friends think of this book!

Community Reviews

5 stars
54 (49%)
4 stars
32 (29%)
3 stars
13 (11%)
2 stars
3 (2%)
1 star
7 (6%)
Displaying 1 - 8 of 8 reviews
Profile Image for Haneen.
292 reviews9 followers
September 26, 2012
CSC304:Microprocessor Architecture and Assembly Language
Sprinf 2011-2012
SuTu 4-5:15 pm



One of the most interesting classes that I have ever took..Although no one was excited with the "Assembly Language" but we were having fun..
A lot of fun..

Thanks Girls...I love taking classes with U...

The book is really amazing...I enjoyed reading it so much..Its clear and direct.. I advice reading it to those who are interested in "Assembly and C Languages"



Profile Image for Medhat  ullah.
409 reviews12 followers
January 11, 2025
; Summary.asm

START: MOV A, #8051H ; Load the heart of the book: the 8051 microcontroller
MOV R0, #ARCHI ; Point to architecture overview
CALL EXPLAIN_REGS ; Deep dive into register set: Accumulator, DPTR, PC
CALL MEM_MAP ; Map internal and external memory spaces

INSTR_SET: JMP MOV_OPCODES ; Jump to instruction set details
MOV A, #LOGIC ; Logical operations: AND, OR, XOR, NOT
MOV A, #ARITH ; Arithmetic magic: ADD, SUB, MUL, DIV
SJMP BRANCH_INST ; Handle jumps, loops, and branches: JMP, CALL, RET

EMBEDDED_C: PUSH ACC ; Save assembly logic, introduce Embedded C
MOV A, #IO_CTRL ; Simplify I/O pin management with human-friendly syntax
MOV A, #TIMERS ; Configure delays with timers in C

INTERFACING: CALL INTER_PERIPH ; Attach peripherals: LEDs, LCDs, motors
CALL UART_PROTO ; Use UART for serial comms with RS-232

MULTITASKING: SETB PWR_MODE ; Enable power efficiency: Sleep and Idle modes
CALL INTERRUPT_LOG ; Master interrupt-driven multitasking
ORG CODE_EXP ; Write modular, maintainable C programs

DEV_ENV: MOV A, #KEIL ; Load Keil IDE for simulation and debugging
MOV A, #DEV_BOARDS ; Test on hardware boards
SJMP REAL_WORLD ; Apply concepts to practical projects

EXIT: JMP END_PROJ ; Wrap up and create fully functional embedded systems

Displaying 1 - 8 of 8 reviews

Can't find what you're looking for?

Get help and learn more about the design.