随笔分类 -  delphi

摘要:判断系统中.NET FrameWork已安装版本的方法很多,比如检查C:\Windows\Microsoft.NET\Framework\下的子目录,但是子目录往往是包含版本号,比如v2.0.50727、v4.0.30319,当然网上也有一些是判断注册表中的HKEY_LOCAL_MACHINE\Software\Microsoft\.NETFramework下的子目录,这个和判断系统文件一样下面都显示的版本号, 经过发现,安装了.NET FrameWork会在HKEY_LOCAL_MACHINE\Software\Microsoft\NET Framework Setup\NDP\下有记录,比 阅读全文
posted @ 2014-02-10 08:43 qanholas 阅读(1711) 评论(0) 推荐(0) 编辑
摘要:我觉得所谓的模块化有两种: "假模块化" 和 "真模块化".所谓 "假模块化" 就是通过 include 指令把 *.inc 或 *.asm 文件的文本插入到当前位置.这样最后还是一个大的 asm 文件, 这适合小型的模块化设计.所谓 "真模块化" 就是一个或几个源文件先通过 lib.exe 编译成 *.lib 文件, 然后通过 includelib 指令引入使用.这在 RadASM 环境中可通过建立 LIB Project 工程方便做到. 做大工程应该使用这种方式.假如通过 Win32 App (no res) 阅读全文
posted @ 2014-01-26 14:40 qanholas 阅读(567) 评论(0) 推荐(0) 编辑
摘要:非科班出身, 现在才接触汇编, 惭愧呀, 好好学!主选课本是清华大学王爽老师的《汇编语言》. 推荐王爽老师的汇编网汇编语言之前是机器语言.机器语言是机器指令的集合, 机器指令是一系列二进制数字, 计算机将之转换为一系列高低电平, 而实现运算.在 PC 机上运行机器指令的是 CPU; 不同的 CPU 有不同的指令, 所以某种汇编语言也只是针对某系列的 CPU.王爽老师举了一个用机器语言输出 "welcome to masm" 的例子:000111101011100000000000000000000101000010111000110001100000111110001110 阅读全文
posted @ 2014-01-26 14:39 qanholas 阅读(430) 评论(0) 推荐(0) 编辑
摘要:从接触 C 语言时, 我就不大喜欢宏; 但为了看懂别人的代码也不得不去了解.宏可定义在源程序的任意位置, 但一般放在 .data 前面.有些简单的宏可以用 equ、textequ 或 = 来代替, 但宏有更复杂的功能."宏" 的本质是 "替换", 但又像极了 "子过程";所以即有宏过程(macro procedure)、也有宏函数(macro function).它既以有参数(可以是: 常数、变量、寄存器、指令、表达式), 有时也需要像子过程一样声明.宏可以指定哪些参数是必须的, 还可以给参数默认值.宏可以包含数据(.data)和代码 阅读全文
posted @ 2014-01-26 14:33 qanholas 阅读(421) 评论(0) 推荐(0) 编辑
摘要:http://www.cnblogs.com/del/archive/2010/04/16/1713886.html跳转指令分三类:一、无条件跳转: JMP;二、根据 CX、ECX 寄存器的值跳转: JCXZ(CX 为 0 则跳转)、JECXZ(ECX 为 0 则跳转);三、根据 EFLAGS 寄存器的标志位跳转, 这个太多了.根据标志位跳转的指令:JE ;等于则跳转JNE ;不等于则跳转JZ ;为 0 则跳转JNZ ;不为 0 则跳转JS ;为负则跳转JNS ;不为负则跳转JC ;进位则跳转JNC ;不进位则跳转JO ;溢出则跳转JNO ;不溢出则跳转JA ... 阅读全文
posted @ 2014-01-26 14:22 qanholas 阅读(2307) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示