- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件保护技术-备课
软件保护技术 备课笔记
步山岳
计算机工程系
第1章 基础知识
1.1文本编码方式
美国信息交换标准码(ASCII: American Standard Code for Information Interchange)是一个七位的编码标准,包括26个小写字母、26个大写字母、10个数字、32个符号、33个控制代码和一个空格,总共128个代码。如“1”的ASCII码是31H(48D),“A”的ASCII码是41H(65D),“a”的ASCII码是61H(97D)。
由于计算机通常用一个“字节( byte)”8位二进制的存储单位来进行信息交换,因此,ASCII码在计算机中用8位来表示,最高位补0。其他字符集,是对ASCII码的扩展,例如ANSI(American National Standards Institute)、Symbol、OEM等字符集是8位字符集,值在127以下的部分是和ASCII相同。
Unicode也是ASCII的一个扩展。在Unicode用两个字节来表示,是一种双字节编码机制的字符集,可表示65536个字符,使用0~65535之间的双字节无符号整数对每个字符进行编码,本书把Unicode称宽字符(Widechars)
在Unicode中,所有的7位ASCII码都被扩充为16位,高位扩充的是零。如“pediy”,它的ASCII码是:
0x70 0x65 0x64 0x69 0x79
其Unicode码的十六进制是:
0x0070 0x0065 0x0064 0x0069 0x0079
Intel处理器存放数据时,低位字节存入低地址,高位字节存入高地址。
注意:内存地址编号是“上(左)”为低地址编号,“下(右)”为高地址编号,看图1.1。
1.2 Windows API函数
1.2.1什么是API函数
1.什么是API函数?
API函数是提供应用程序运行所需要的窗口管理、图形设备接口、内存管理等各项服务功能的函数,提供这些功能以函数库的形式组织在一起,形成了Windows应用程序编程接口(API Application Programming Interface),简称WinAPI。
看图1.2,Win API子系统将API调用转换成Windows操作系统的系统服务调用,在它的下面是Windows的操作系统核心,而它的上面则是Windows应用程序。可以说Win API是构筑Windows框架的核心基石。
API函数从Windows 1.0支持不到450个函数,到现在己有几千个函数。
2.API函数在计算机或操作系统的什么地方?
API函数在计算机或操作系统的什么地方:动态链接库DLL(Dynamic-Link Library),Windows运转的核心就是“动态链接”。
3.什么是动态链接库DLL?
DLL就是包含了若干个函数、类和资源的库文件,它可以被其它可执行文件(如.EXE文件和其它DLL文件)动态调用。
4.动态链接库的优点
使用DLL的使多个应用程序,甚至是不同语言编写的应用程序可以共享一个DLL文件,真正实现了“资源共享”,同时,节省内存,减少交换操作,节省磁盘空间DLL自己不能直接执行,但其他程序可以调用 DLL 中的一个实例。在静态链接中,链接器从静态链接库获取所有被引用的函数,并将库同代码一起放到可执行文件中。内存DLL中,如:
Kernel32..dll:包括进程与线程控制、内存管理、文件访问等,提供操作系统核心功能服务;
User32.dll:负责处理用户接口,包括键盘和鼠标输入、窗口和菜单管理等;
Gdi32.dll:图形设备接口,允许程序在屏幕和打印机上显示文本和图形;
Kernel、User和GDI是Windows三个主要的动态链接库。
Advapi32.dll:包括对象安全性、注册表操作;
COMCTL32.DLL:通用控件;
COMDLG32.DLL:公共对话框;
SHELL32.DLL:用户界面外壳;
DIBENG.DLL:图形引擎;
NETAPI32.DLL:网络。
6.DLL文件位置
在Windows NT/2000/XP中,这些DLL文件通常位于系统安装目录里的Windows\SYSTEM或Windows\S YSTEM32子目录中。
1.2.2 什么是句柄
句柄(Handle)是Windows用来标识被应用程序所建立或使用的对象的唯一整数值(32位,
您可能关注的文档
- 黑板报花边设计指导》-课件免费下载.doc
- 黑电举步维艰白电安步当车-免费下载.doc
- 黑板报书写指导》-课件免费下载.doc
- 黑河中下游地区生态整治对策研究.pdf
- 黑色个性【漂亮PPT模板素材集锦】.ppt
- 黑色情人节【精美PPT模板下载】.ppt
- 黑红商务旋律【漂亮PPT模板素材集锦】.ppt
- 黑龙江省编小学信息技术第四册第8课.doc
- 黑色星期五【精品PPT模板】.ppt
- 黑龙江牡丹江用“收入模型”激发组织发展意愿.ppt
- DB42T2475-2025丝瓜生产技术规程.docx
- DB42T2486-2025水运工程长螺旋钻孔压灌素混凝土桩复合地基技术规程.docx
- 房屋建筑和市政基础设施工程安全生产 责任保险事故预防技术服务标准.docx
- DB31T+842-2025微电子元件制造业职业病危害控制规范.docx
- DB31T+485-2025停车场(库)标志标线设置规范.docx
- DB43_T 3322-2025公路隧道交通事件感知及预警技术规范.docx
- DB43_T 3324-2025古代漆器文物数据采集加工技术规范.docx
- DB51T2440.2-2025监狱管理规范 狱政管理工作标准.docx
- DB31T+1666-2025规模化奶牛场嗜冷菌防控技术规程.docx
- DB42T2472-2025异育银鲫“中科5号”池塘养殖技术规程.docx
原创力文档


文档评论(0)