-
First, the register position is different:
1. CS: ** segment register;
2. DS: data segment register;
3. ss: stack segment register.
Second, the storage location is different
1. **Segment register cs: store the segment base value of the segment where the currently running program ** is located.
2. Data segment register DS: the segment base value of the data segment is stored.
3. Stack segment register ss: stores the segment base value of the stack segment.
1. The address of the CS** segment, the joint IP is used as the CPU to point to the instruction that is currently being executed, and it cannot be modified at will.
2. The SS stack segment address asks the joint SP to define an answer stack, once you determine the stack address, the SS cannot be changed casually.
3. The DS data segment address defines a data segment.
-
In assembly language, CS, DS, SS also has an ES definition as follows:
CS (code segment) :** segment register;
DS (Data Segment): data segment register;
ss (stack segment): stack segment register;
ES (extra segment): An additional segment register.
When a program is to be executed, it is necessary to decide where the program, data, and stack will be used in memory, and point to these starting positions by setting the segment registers cs, ds, and ss. Usually the DS is fixed and the CS is modified as needed.
-
**Segment register CS
Segment register DS
Stack Segment Registers SS
Written mainly in **paragraph**.
-
1.Segment register CS: The segment base value of the segment where the currently running program is located, indicating that the instruction currently in use can be obtained from the memory segment specified by the segment register, and the corresponding offset value is provided by the IP.
-
CS segment address, the joint IP is used as the CPU to point to the instruction that is currently being executed, and you generally cannot modify it at will.
SS Stack Segment Address Joint SP defines a stack, once you have determined the stack address, SS cannot be changed arbitrarily.
DS Segment Address Defines a data segment.
If you're a beginner, you can use DS and ES when you need to, and you'll learn more about how to use them.
-
code segment register.
Data Segment registers.
Stack registers.
-
cs: ** segment register.
DS: data segment register; ss: stack segment register; When a program is to be executed, it is necessary to decide where to use the memory for the return program**, the data answer, and the stack, and point to these starting positions by setting the segment registers cs,ds,ss.
Usually the DS is fixed, and the **segment address is modified as needed, the joint IP is used as the CPU to point to the instruction that is currently being executed, you generally can't modify it at will SS stack segment address Joint SP defines a stack, once you determine the stack address, SS can't change the DS data segment address casually, define a data segment If you are a novice, you can use DS and ES when necessary, with more in-depth learning you will understand how to use it.
Segment register CS: The segment base value of the segment where the currently running program is located, indicating that the current instruction can be obtained from the memory segment specified by the segment register, and the corresponding offset value is provided by the IP.
-
cs、ds、ss
respectively. **Segment Registers, Data Segment Registers, Stack Registers.
A simple 8086 assembler can use the system stack (or the default stack) directly, so.
You don't have to. ss
Register. That is, a simple program usually consists of a ** segment and a data segment. The data is usually placed in a data segment, and it is usually only necessary to assign a value (MOV) to the data segment register DS at the beginning of the program
ax,seg
data/mov
ds, ax), after which ds no longer appeared. But to use.
The DI register is not defined again.
ES (Additional Data Segment Registers) can be used like this: movax, ds: [di].
That is to say: SI should be sumed. ds
Registers, DI should be sumed. es
registers, bp should be sumed. ss
Register. When used directly, it implicitly refers to the DS register. Otherwise, prefix the offset address, such as.
ds:[di]。
For more knowledge, check out the assembly language tutorials!
Assembly language can be said to be machine language, and what deals directly with hardware is to transform computer language into 1001 that machines can recognize. It's not going to go out of style, at least not for this decade. It's mostly about the hardware side though. >>>More
The latter instruction is div bx, indicating that you are doing 16-bit division, then the default dividend is [dx,ax], where dx is the higher 16 bits of the dividend, ax is the lower 16 bits of the dividend, and in fact your dividend is only stored in ax, then the high position of the dividend should be cleared to zero, for example, if you want to calculate 72 8, but the dividend must be 4 digits, so should your dividend be written as 0072? >>>More
There are four segments in it, which are A, B, C, and Code. >>>More
24) Designator: mm Function: Find the extreme value of a single-byte hexadecimal unsigned data block. >>>More
srand(int) is used to set the seed, and then returns a random value each time rand(). >>>More