Detailed Explanation of Assembly Language Memory Models and Instruction Encoding

Detailed Explanation of Assembly Language Memory Models and Instruction Encoding

1. Mod R/M Byte Encoding Mechanism 1.1 Basic Structure The Mod R/M byte is a core component of x86 instruction encoding, dividing the 8 bits into three fields: Mod (2 bits): Specifies the addressing mode and offset type Reg/Opcode (3 bits): Specifies the register or opcode extension R/M (3 bits): Specifies the second register or … Read more

PLC Programming Design Methods

PLC Programming Design Methods

Q What is thought? It is the result or the system of viewpoints and concepts formed by the reflection of objective existence in human consciousness through cognitive activities. There are good and bad thoughts; correct thoughts can quickly achieve goals. PLC Programming Design Methods In short: Program = Data + Algorithm A good program structure … Read more

How to Represent Memory Address 0 in C/C++

How to Represent Memory Address 0 in C/C++

Click the blue “Most Programmer” to follow me! Add a “star“, every day at 18:03 to learn technology together! This is a typical case of “knowing the phenomenon but not the reason behind it”, a common issue in our learning process.When teachers or textbooks mention that “accessing address 0 is an illegal access”, how many … Read more

Analysis of Checkpoint 10.1 Answers in Assembly Language

Analysis of Checkpoint 10.1 Answers in Assembly Language

“Assembly Language”, 3rd Edition by Wang Shuang Chapter 10: CALL and RET Instructions Checkpoint 10.1 (Page 191) Complete the program to execute instructions starting from memory address 1000:0000. assume cs:codestack segment db 16 dup(0)stack endscode segment start: mov ax, stack mov ss, ax mov sp, 16 mov ax, ______ push ax mov ax, ______ push … Read more

Assembly Language Day 06

Assembly Language Day 06

0x00 This section is dedicated to daily learning and note sharing to help everyone learn assembly language. Why learn assembly language? Because in red-blue confrontations, our tools are often detected and killed by some AV/EDR. Therefore, we need to counter AV, which is the evasion technique. To learn evasion techniques, we must start from the … Read more

Assembly Language Day 01

Assembly Language Day 01

0x00 This article is dedicated to daily learning and note sharing to help everyone learn assembly language. Why learn assembly language? Because in red-blue confrontations, our tools are often detected and killed by some AV/EDR. Therefore, we need to counter AV, which is the evasion technique. To learn evasion techniques, we must start from the … Read more

Understanding the [BX] Register and the Loop Instruction in Assembly Language

Understanding the [BX] Register and the Loop Instruction in Assembly Language

[BX] Register and Loop Instruction [BX] and Memory Cell Description [0] represents a memory cell with a byte length of one, where 0 indicates an offset address of 0, and the segment address is stored in ds. From this, we can see that describing a memory cell requires two pieces of information: the address of … Read more