摘要: 来着日本天才的30天自制操作系统 程序开始就指明了程序的装载地址0x7c00 具体参考:https://www.douban.com/note/249471773/ 简单来说就是:开机的时候,电脑首先执行的是BIOS(基础输入输出)程序,然后BIOS从指定的设备加载数据, 而加载数据的地址已经定死了 阅读全文
posted @ 2016-04-28 18:54 yugan 阅读(327) 评论(2) 推荐(0) 编辑
摘要: 嗯 基本对了 0 0 .。 之后看python怎么样。。。C++不是太会字符处理 之后终于改好了 效果如下: 还好很好玩的 - - 不过本人愚笨,弄了一天 阅读全文
posted @ 2016-04-27 21:10 yugan 阅读(635) 评论(0) 推荐(1) 编辑
摘要: 这是一个注册的例子,首先通过查找提示的字符串进而找到程序对输入的name和key的处理函数 这个例子是用的对等函数检查注册码 F1(用户名)=F2(序列号) call serial.0040137E 返回值就是把字符串转换为小写在把每个字符相加 call serial.004013D8 设每次读取一 阅读全文
posted @ 2016-04-26 18:48 yugan 阅读(430) 评论(0) 推荐(0) 编辑
摘要: 在进行除法运算的时候,编译器可能对除法优化,采用以下的方式运算 另外还有其他好几种优化的方式:http://blog.csdn.net/warlice/article/details/7803626 阅读全文
posted @ 2016-04-26 15:19 yugan 阅读(509) 评论(0) 推荐(0) 编辑
摘要: 在加密与解密上看到的return返回值的汇编分析和自己用IDA打开的有所不同,但是基本差不多,做个记录: _main函数略过,就是把参数按_stdcall标准传递进去,具体进入调用的函数: 这里是用的 mov ebp,esp 暂存esp push ecx 来分配局部变量 ... mov esp,eb 阅读全文
posted @ 2016-04-24 21:45 yugan 阅读(1273) 评论(0) 推荐(0) 编辑
摘要: 第一个win32汇编窗口程序,主要来自 win32汇编语言程序设计,然后加上了自己查阅msdn文档的一些理解,基本过程: start入口地址 --> _WinMain主函数 --> 定义一些需要用的消息实体和类实体 --> 注册窗口类 --> 建立并显示窗口 --> 消息循环 ( _ProcMain 阅读全文
posted @ 2016-04-23 11:20 yugan 阅读(272) 评论(0) 推荐(0) 编辑
摘要: 结构体WDNCLASS如下 WNDCLASS struct Style xxxxx WNDCLASS 可以使用 mov ax,[esi+stWndClass.lpfnWndProc] 或 mov esi,offset stWndClass mov ax,[esi+WNDCLASS.lpfnWndPr 阅读全文
posted @ 2016-04-20 20:42 yugan 阅读(351) 评论(0) 推荐(1) 编辑
摘要: 在汇编中,变量都是放在.data或者.data?中的,其中分为全局变量和局部变量。 全局变量: .data wHour dw ? #未初始化的word类型 wMinute dw 10 #初始化为10的word类型 word_Buffer dw 100 dup(1,2) #200个字 szBuffer 阅读全文
posted @ 2016-04-20 20:10 yugan 阅读(1056) 评论(0) 推荐(0) 编辑
摘要: 之前弄完了16位汇编,现在正式学习win32汇编,首先就是一些原理了,其实就是在16位的基础上增加了一些内容,其程序主要的结构记录如下 (1)指令集 .386 这是指定指令集 必须工作在80386的处理器上 mov cr0,eax 这类指令在特权级0上运行,编译到这个就报错 如果要写VxD等驱动程序 阅读全文
posted @ 2016-04-20 18:46 yugan 阅读(766) 评论(0) 推荐(0) 编辑
摘要: %用于匹配任意个数的任意字符(access中是*) _用于匹配单个任意字符(access中是?) []用于匹配指定字符集中的单个字符 可以通过加^来否定[]中的字符 如:[^acg] 否定了acg这三个字符。而且只有access和sql server支持这个 阅读全文
posted @ 2016-04-04 23:01 yugan 阅读(135) 评论(0) 推荐(0) 编辑