(16) label: HBCD function: convert a single-byte hexadecimal integer to a single-byte BCD code integer
Entry condition: The hexadecimal Integers of A single byte to be converted are in the accumulators.Exit information: the converted BCD code INTEGER (ten digits and one digit) is still in the accumulators A, and the hundred digits are in R3.Affected resources: PSW, A, B, and R3 stack requirements: 2 bytes
HBCD: mov B, #100; separates hundreds of BITs
[Reprint] study on how nt loads ntldr nt guidance 1
Http://forum.eviloctal.com/thread-17505-1-1.html
Source: www.hackart.org
Author: windy men
The operating system boot process is as follows:1. the BIOS reads the MBR to 0000: 7c00 and submits the execution permission to the MBR.2. MBR identifies partitions and reads dbr0000 with boot permission: 7c003 DBR: locate ntldr and read ntldr into memory at. ntldr is 32-bit and loaded into the kernel. The following is the code analysis in step 1 of the
description pseudo-directive; Cs:code, Ds:data, Ss:stack1: Code segment Register CS is associated with code, data segment register DS is associated with a, and the stack segment register SS is associated with Stack1. Assume Cs:code,ds:data,ss:stack1; Defines the program entry Start:push DS, presses the data segment register DS into the stack sub Ax,ax, and the AX register 0 (other methods include: 1.MOV ax,0 2.AND ax,0 3.XOR ax,ax) push ax; Ax regist
Recently I learned a lot of shell removal scripts, and Tortoiser also made a lot of videos about shell removal, which made me learn a lot and feel the power of the experts. I also need to work hard. Of course, sometimes I read the script and sometimes it appears like this. to be honest, I cannot know why such a feature is extracted there. you need to know that only you can find the answer through practice. I chose the Themida v1.8.2.0 shelling program. In addition to the OEP processing option, t
8086 assembly instruction summary, 8086 assembly instruction
After learning, we have summarized the Common commands in 8086 Assembly as follows:
(1). mov: move data
For example:
Mov ax, 8 h; mov register, constant mov ax, bx; mov register, register
access the table, the value is int * p; p = a. Then, * p = 0 (equivalent to a [0]). * (p + 2) = 3 (equivalent to a [2]); the memory structure is as follows: ├ ── ─ ┤ ← p
│ A [0] │
├ ─ ┄ ┤ ← P + 1
│ A [1] │
─ ┄ ┤ P + 2 │ a [2] │
├ ── IntValue; 6: int a [3] = {1, 2, 3}; 0040E9C8 mov dword ptr [ebp-10h], 1 // note [1] 0040E9CF mov dword ptr [ebp-0Ch], 20040E9D6 mov
.) Therefore, the grandfather class in the above example is placed at the end.Let's look at the access to members. Run the following code and view the corresponding assembly code.C110 c110;C110.c _ = 0x51;C110.c100: C _ = 0x52;C110.c101: C _ = 0x52;C110.c041: C _ = 0x53;C110.foo ();The corresponding assembly code is:01 00423993 Push 102 00423995 Lea ECx, [EBP + fffff7f0h]03 0042399b call 0041de6004 004239a0 mov byte PTR [EBP + fffff7fah], 51 H05 0042
After learning, we have summarized the Common commands in 8086 Assembly as follows:
(1). mov: move data
For example:
MoV ax, 8 h; MoV register, constant mov ax, BX; MoV register, register mov ax, DS: [0];
Sidi is a register with similar functions between 8086cpu and BX. Sidi cannot be divided into two 8-bit registers.
The following three sets of commands implement the same functions:
(1) mov BX, 0
MoV ax, [BX]
(2) mov Si, 0
MoV ax, [Si]
(3) mov Di, 0
Document directory
1. Function Parameters
3. Reference
This article is based on Win32 compilation.1. Function Parameters
The growth direction of function stack is opposite to that of address, from high address to low address. ESP points to the top of the function stack, and EBP points to the bottom of the function stack.
Sub esp xxx pushes memory blocks of XXX length into the stack
Add esp xxx to bring up a stack of memory blocks of XXX Length
Example of parameter pressure stack Sequence
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.