Understanding Pointers in C Language

Understanding Pointers in C Language

Pointers are the essence of the C language. Understanding memory can help better comprehend and learn about pointers. Before learning about pointers, it is advisable to refer to the Von Neumann architecture and the simple example of the Von Neumann architecture, as well as the basic understanding of operating systems. When you run a program, … Read more

Embedded Interview Questions – How to Determine if a Device is Big Endian or Little Endian

Embedded Interview Questions - How to Determine if a Device is Big Endian or Little Endian

Reviewing yesterday’s interview question – how to determine the endianness of a deviceYesterday, the interviewer first asked me what endianness is, and I confidently answered that big endian stores the low-order byte at the high memory address, while little endian stores the low-order byte at the low memory address.For example, the data 0x12345678 is stored … Read more

Discussing C Programming – Address Manipulation and Byte Control in C Language

Discussing C Programming - Address Manipulation and Byte Control in C Language

1. Basics of Address Manipulation 1. Nature of Pointer Variables A pointer is a variable that stores a memory address, and its core function is to enable direct access to any memory unit. Unlike ordinary variables, the value of a pointer is a memory address rather than data. int num =100; int* ptr =# // … Read more

Practical Operations for Nested Structures and Unions in Embedded C Programming

Practical Operations for Nested Structures and Unions in Embedded C Programming

Content Structures and unions are composite types in the C language, and we often use structures. However, some beginners may not use unions frequently and may even feel unfamiliar with them. Let’s take a brief look at unions: The keyword for defining a union in C is union. The general form for defining a union … Read more

Solutions to Endianness Issues in Embedded Programming

Solutions to Endianness Issues in Embedded Programming

The issue of endianness is not new in embedded development. As developers, we have a clear understanding of the endianness problem in embedded development, and here I will provide a simple summary of this issue. Endianness refers to the order of bytes in memory. There is a wealth of information available online regarding endianness, so … Read more

Summary of ARM Related Knowledge

Summary of ARM Related Knowledge

1. What do T, D, M, and I stand for in ARM7TDMI? Answer: These four letters represent a characteristic of ARM: T: High-density 16-bit Thumb instruction set extension D: Supports on-chip debugging M: 64-bit multiplication instruction I: Includes embedded ICE hardware simulation module 2. Quick Knowledge Summary: ARM7 adopts a 3-stage pipeline, while ARM9 adopts … Read more