1 LES BX, DWORD PTR DS:_OSTCBCur ;取得任务堆栈指针ES:[BX]2 MOV ES:[BX+2], SS ;将当前SS(栈的基地址)寄存器值存放至当前任务堆栈的2,3内存单元3 MOV ...
分类:
其他好文 时间:
2015-02-14 16:05:52
阅读次数:
192
64位原子操作的加法的实现。只有看汇编才能理解
1100306:80b5ef20 :
1100307-80b5ef20: 53 push %ebx
1100308-80b5ef21: 89 d8 mov %ebx,%eax
1100309-80b5ef23: 89 ca ...
分类:
其他好文 时间:
2015-02-12 20:12:12
阅读次数:
289
第二天作者主要解释并优化了之前用汇编写的helloworld系统源文件
之前一节是用了DB DW DD RESB等命令
这一节的新命令:
ORG把程序装载到内存中指定的地址,单词:origin
JMP跳转
MOV赋值
ADD加法
CMP比较
JE条件跳转
INT软件终端指令,单词:interrupt
HLT CPU待机
介绍CPU寄存器
16位寄存器:
AX
CX
...
分类:
其他好文 时间:
2015-02-12 12:32:26
阅读次数:
164
第(3)小题下面的程序的功能是将“mov ax,4c00h”之前的指令复制到内存0:200处,补全程序。上机调试,跟踪运行结果。assume cs:codecode segment mov ax, cs ;cs为程序入口的段地址,我们就是要从这里开始复制 mov ds,ax mov ax,00...
分类:
编程语言 时间:
2015-02-08 19:22:24
阅读次数:
291
一、数据传输指令───────────────────────────────────────它们在存贮器和寄存器、寄存器和输入输出端口之间传送数据.1. 通用数据传送指令.MOV 传送字或字节.MOVSX 先符号扩展,再传送.MOVZX 先零扩展,再传送.PUSH 把字压入堆栈.POP 把字弹出堆...
分类:
编程语言 时间:
2015-02-05 13:12:03
阅读次数:
249
没看懂题,直接看了INPUT,原来真的可以猜出来。原题:1805. Electrical OutletsTime Limit: 1.0 Seconds Memory Limit: 65536KTotal Runs: 3321 Accepted Runs: 2575 Roy has just mov....
分类:
其他好文 时间:
2015-02-04 23:06:43
阅读次数:
129
1、打开指定NPC对话功能
DWORD GetNpcObjForName(char* szpNpcName);
DWORD OpenNpcTalkForName(char* szpNpcName);
//获取指定NPC对象
push 0
push 0
push 0x401
mov ecx,2DF25598 //NPC对象地址
mov eax,[ecx]
...
分类:
其他好文 时间:
2015-02-02 18:08:54
阅读次数:
125
看一个实际的例子: kd> unt!InitBootProcessor+0x3df:81b3a6de fec8 dec al81b3a6e0 f6d8 neg al81b3a6e2 bfe0df8f81 mov edi,offset nt!ExpBootEnvironmentIn...
分类:
其他好文 时间:
2015-02-02 17:55:34
阅读次数:
109
c_runtime_cpu_setup函数在arch/arm/cpu/arm920t/start.S文件中: .globl c_runtime_cpu_setupc_runtime_cpu_setup: mov pc, lr //没做什么就返回了回到arch/arm/lib/crt0.S文件中:bl c_runtime_cpu_setup /* we still call old ro...
分类:
其他好文 时间:
2015-02-02 08:23:07
阅读次数:
169
它们在存贮器和寄存器、寄存器和输入输出端口之间传送数据.1.通用数据传送指令.MOV传送字或字节.MOVSX先符号扩展,再传送.MOVZX先零扩展,再传送.PUSH把字压入堆栈.POP把字弹出堆栈.PUSHA把AX,CX,DX,BX,SP,BP,SI,DI依次压入堆栈.POPA把DI,SI,BP,S...
分类:
其他好文 时间:
2015-01-25 21:02:30
阅读次数:
251