上一页 1 ··· 35 36 37 38 39 40 41 42 43 ··· 215 下一页
摘要: URLOpenStream 和 URLDownloadToFile 类似, 都是下载文件的 COM 函数;前者是下载到 IStream 流, 后者是直接下载到指定路径; 不如后者使用方便.它们都声明在 UrlMon 单元, 本例还要同时 uses ActiveX, 因为要用到 IStream 接口.IBindStatusCallback 接口有八个方法(或事件), 用到用不到都得给简单实现下;我们... 阅读全文
posted @ 2010-04-09 21:29 万一 阅读(8479) 评论(9) 推荐(1) 编辑
摘要: 通用寄存器EAX累加(Accumulator)寄存器AX(AH、AL)常用于乘、除法和函数返回值EBX基址(Base)寄存器BX(BH、BL)常做内存数据的指针, 或者说常以它为基址来访问内存.ECX计数器(Counter)寄存器CX(CH、CL)常做字符串和循环操作中的计数器EDX数据(Data)寄存器DX(DH、DL)常用于乘、除法和 I/O 指针ESI来源索引(Source Index)寄存... 阅读全文
posted @ 2010-04-09 13:53 万一 阅读(4590) 评论(1) 推荐(1) 编辑
摘要: Loop 是反复执行;从哪反复? 这要用到 "标号";反复几次? 把反复的次数告诉 ECX 寄存器即可.笨办法计算 3 * 8 = 24使用 LOOP 和标号:数组求和的例子:复制字符串的例子:如果仅仅是复制字符串, 可以使用声明在 masm32.inc 中的 szCopy 函数:关于 @@、@B、@F:关于全局标号: 阅读全文
posted @ 2010-04-08 17:02 万一 阅读(3108) 评论(1) 推荐(0) 编辑
摘要: [地址] 是取地址指向的内容:地址指向的是什么数据?[] 一般用于数组:当然也可以写入数组:好像 [] 不能直接是变量或常数(变量后面跟的 [] 除外). 阅读全文
posted @ 2010-04-08 15:52 万一 阅读(3882) 评论(1) 推荐(0) 编辑
摘要: =、EQU、TEXTEQU 功能差不多, 它们定义的符号都将在编译前辈替换成它们指定的常量值.相比之下 EQU 更好用些.= 举例EQU 例一EQU 例二用 TEXTEQU 重做上一个例子, 完全可行:用 TEXTEQU 重做 EQU 的第一个例子(Test13_2.asm), 有区别: 阅读全文
posted @ 2010-04-07 17:24 万一 阅读(5721) 评论(0) 推荐(0) 编辑
摘要: PTR: 指定要操作的数据尺寸OFFSET: 获取全局变量或标号的偏移地址ADDR: 类似 offset 也是获取变量的地址...获取局部变量的地址只能使用 ADDR:OFFSET 和 ADDR 的异同:1、offset 不能获取局部变量的地址;2、addr 只能用于调用函数(invoke)时, 不能用于赋值操作;3、addr 面对局部变量时会转换为 lea 等指令, addr 面对全局变量时则直... 阅读全文
posted @ 2010-04-07 15:03 万一 阅读(5658) 评论(2) 推荐(0) 编辑
摘要: 32 位的寄存器容量是 4 字节, 如果内存中的数据都按 4*n 字节对齐, 肯定会加快吞吐速度;但事实并非如此, 不同大小的数据可能会让寄存器别别扭扭地去处理, 从而降低了运行速度!如果使用对齐, 就会浪费掉一些内存空间; 其实这是一个需要权衡 "速度" 与 "内存" 得失的问题.准备使用的测试文件:ALIGN: 指定对齐边界EVEN 是偶对齐, 相当于 ALIGN 2ORG 可以指定从当前位置... 阅读全文
posted @ 2010-04-06 22:45 万一 阅读(4553) 评论(0) 推荐(1) 编辑
摘要: TYPE: 获取类型大小, 对数组是获取每个元素的大小$: 当前程序语句的地址LENGTHOF: 数组元素个数; SIZEOF: 总字节数TYPEDEF: 创建自定义类型 阅读全文
posted @ 2010-04-06 12:40 万一 阅读(5660) 评论(0) 推荐(0) 编辑
摘要: 定义子过程的伪指令: PROC、ENDP模仿 C 语言的样子, 以后的程序结构应该这样:局部变量要用 local 声明, 和全局变量区别不小:调用子过程:一个求和函数的例子: 阅读全文
posted @ 2010-04-05 20:23 万一 阅读(3343) 评论(1) 推荐(0) 编辑
摘要: 算术运算符名称优先级()圆括号1+,-正、负2*,/乘、除3MOD取模3+,-加、减4算术运算符示例:关系操作符(EQ、NE、LT、LE、GT、GE)示例:逻辑操作符(AND、OR、XOR、NOT)示例:高低分离符(HIGH、LOW、HIGHWORD、LOWWORD)示例:移位运算符(SHL、SHR)示例:以上运算符(或伪指令)有些和汇编(硬)指令重名, 区别在于它们只用于常数表达式, 并在编译期... 阅读全文
posted @ 2010-04-04 20:10 万一 阅读(4342) 评论(11) 推荐(0) 编辑
上一页 1 ··· 35 36 37 38 39 40 41 42 43 ··· 215 下一页