- 博客(22)
- 收藏
- 关注
原创 Win32汇编语言1---基础知识
80386处理器的工作模式1.实模式80386处理器以实模式启动,这时候各个寄存器以实模式初始化,80386处理器在实模式下的存储器寻址方式和8086一样,段寄存器的内容×16当作段基址,加上偏移地址形成最终的物理地址,这时候32根物理地址总线只使用了低20位,在实模式下,80386处理器不能对内存进行分页管理,所以指令寻址的地址就是内存中实际的物理地址,实模式下所有的段都是可读写的,执行
2013-07-31 19:04:02
406
原创 顺序表实现二叉树的三种遍历
#include "stdafx.h"#includeusing namespace std;#define BinTreeNode intstruct seqBinTree { int MAXNUM; int n; char *nodes;};typedef struct seqBinTree *PSQBinTree;PSQBinTree createEmptyBin
2013-07-06 10:43:50
532
转载 Huffman编码压缩算法
转自http://coolshell.cn/articles/7459.html直接来看示例,如果我们需要来压缩下面的字符串: “beep boop beer!” 首先,我们先计算出每个字符出现的次数,我们得到下面这样一张表 :字符次数‘b’3‘e’
2013-06-12 23:21:22
347
原创 Windows内核编程基本方法
数据访问主要有三种I/O方式,缓冲区I/O(Buffered I/O),直接方式I/O(DirectI/O)和非缓冲区非直接方式I/O1.缓冲方式I/O对于缓冲方式,系统会分配一个非分页的缓冲区,该缓冲区大小和应用程序提供的缓存大小是一样的。。对于读请求操作,I/O管理器会将应用程序提供的用户的缓冲区的内容复制到系统分配的缓冲区中,然后I/O管理器将此IRP下发到对应的驱动中对于写请求
2013-06-05 01:43:20
503
原创 IRP知识
在微软的Windows 操作系统家族中,都通过发送I/O 请求包(IRP, I/o Request Packets)来进行和驱动程序的通讯。用来封装IRP 的数据结构不仅仅用来描述一个I/O 操作的请求本身的内容,还要用来维护这一请求在一系列驱动程序中传递的过程中的相关状态信息.。实现这一数据结构其实是为了两重目的,也就是说IRP 可以被定义[理解]为:一个放置I/O请求的容器
2013-06-02 20:41:01
397
原创 Windows 内核编程
常见的内核数据结构1。驱动对象结构(DRIVER_OBJECT)每个驱动对象代表一个已经加载的内核驱动程序,指向驱动对象结构的指针常常作为DriverEntry,AddDevice,Unload等函数的参数。驱动对象结构是半透明的(即结构中只有部分域是公开的),其中公开的域包括DeviceObiect,DriverExtension,HardwareDatabase,FastIoD
2013-06-01 09:15:14
552
原创 创新杯节能减排大赛点滴
C#有关进程的操作using System.Diagnostics //包含了能够与系统进程,事件日志,和性能计数器进行交互的类System.Management 命名空间提供对大量管理信息和管理事件集合的访问,这些信息和事件是与根据 Windows 管理规范 (WMI) 结构对系统、设备和应用程序设置检测点有关的。应用程序和服务可以使用从 ManagementObje
2013-05-15 15:10:03
404
原创 Josephus(约瑟夫)问题----循环链表实现
约瑟夫问题:设有N个人围坐在一个圆桌,现在从第S个人开始报数,数到第M个人出列,然后从出列的下一个人重新开始报数,数到第M个人又出列。。。如此反复得直到所有的人全部出列为止,Josephus问题是:对于任意给定的N,S,M,求出按出列次序得到的N个人的序列。输入只包含一行,共三个整数,N s m 其中N表示一共有N个人,s表示从第s个人(1// Josephus Pr
2013-05-14 21:02:24
412
原创 数据结构试验二-循环链表的基本操作
#include "stdafx.h"#include "Function.h"CLList createCLList(void){ CLList list; list=(CLList)malloc(sizeof(struct clList)); if(list==NULL) { return NULL; } list->head=(PNode)malloc(sizeof(
2013-05-14 17:01:39
519
原创 UniCode的解决方案
char C="A";变量C需要一个字节的存储空间而且会用十六进制的0X41来被初始化,也就是ASCII字母A的符号。 char *p;定义一个指向字符串的指针,因为windows 32的操作系统中,指针变量p需要4个字节的存储空间, char *p=“Hello!”;变量p和之前一样,仍然需要4个字节的存储空间,字符串存储在静态内存中并使用7个字节的存储空间(
2012-09-03 21:03:50
294
原创 代码注入的三种方法
概要:本文如何将代码注入到不同的进程地址空间,然后在该进程的上下文中执行注入的代码,本文将介绍三种方法1.windows钩子2.CreateRemoteThread和LoadLibrary技术 ----进程间通信3.CreateRemoteThread和WriteProcessMemory技术---如何使用该技术子类化远程控件---何时使用该技术Windows
2012-07-31 12:16:35
103
原创 WPF 数据绑定 学习笔记
前几天刚看完WPF的数据绑定,但是真正开始写项目的时候却不知道该怎么用了,现在在拿来复习一下数据对象是指计划在用户界面上显示的信息包,只要由公有属性组成, 不支持字段和私有属性 ,任何类都可以使用,此外如果希望使用这个对象进行修改(双向绑定)。属性不能是只读的。public class Product{ private string modelNumber
2012-07-25 17:19:02
106
原创 WPF 动画 学习笔记3
学习Silverlight 动画之前,首先需要明确一下三点核心概念:1. Silverlight动画是基于时间线的; 开发人员可以设置初始状态,结束状态和动画时间段,Silverlight会自动计算生成动画效果。2. Silverlight动画是对象属性的修改过程; 例如,一个按钮动画,用户点击后,按钮会自动增大,其动画原理,就是对按钮的宽度和高度在一定时间段中进行改变置,即生成动
2012-07-21 18:28:07
122
原创 WPF 动画 学习笔记2
使用代码创建动画WPF使用它所需要的步长以确保在当前配置的帧速率下得到平滑的动画,标准的帧速率60帧/秒,换句话说,每隔1/60秒WPF就会计算所有应用了动画的数值,并更新相应的属性。实例化一个动画类然后使用希望修改的元素BeginAnimation()方法 (所有WPF元素,从UIElement基类开始,都继承了BeginAnimation()方法,该方法是IAnimata
2012-07-21 18:26:30
1759
原创 WPF 动画 学习笔记1
基于时间的动画假如需要旋转windows窗体应用程序中的About对话框中的一块文本,下面是构建该解决方案的传统方法1.创建一个周期性触发的计时器 ,50毫秒触发一次2.当触发计时器时,使用事件处理程序计算一些与动画相关的细节,如新的旋转角度,然后使窗体的一部分或者整个窗体失效3.不久以后,windows将会要求窗口重新绘制界面,触发自定义的绘图代码4.自定义的绘图代码之后,渲
2012-07-21 15:44:01
600
WPF 动画 学习笔记
基于时间的动画假如需要旋转windows窗体应用程序中的About对话框中的一块文本,下面是构建该解决方案的传统方法1.创建一个周期性触发的计时器 ,50毫秒触发一次2.当触发计时器时,使用事件处理程序计算一些与动画相关的细节,如新的旋转角度,然后使窗体的一部分或者整个窗体失效3.不久以后,windows将会要求窗口重新绘制界面,触发自定义的绘图代码4.自定义的绘图代码之后,渲
2012-07-21 12:36:44
78
原创 WPF 行为和触发器 学习笔记
使用触发器可以自动完成简单的样式改变,例如当一个属性发生变化时可以进行响应,并自动调整样式。触发器通过Style.Triggers集合连接到样式,每个样式都可以有任意多个触发器,并且每个触发器都是System.Windows.TriggerBase的派生类的实例继承自TriggerBase的类Trigger 这是一个简单的触发器,它监视依赖项属性的变化,然后使用设置器改变样式Mul
2012-07-19 21:18:56
2277
转载 PE详解之IMAGE_NT_HEADERS结构定义即各个属性的作用
IMAGE_NT_HEADERS STRUCT { +0hDWORDSignature // +4h IMAGE_FILE_HEADER FileHeader //+18hIMAGE_OPTIONAL_HEADER32 OptionalHeader //} IMAGE_NT_HEADERS ENDS
2012-06-06 23:50:17
75
网络安全编程1
winsock编程常用的基本函数htonl()将主机的unsigned long值转化为网络字节顺序(32位)定义如下:u_long htonl(u_long hostlong)参数hostlong表示主机字节顺序的数字,函数返回一个网络字节顺序的数字#include#include#program comment(lib,"ws2_32.lib")void mai
2012-06-01 03:00:42
103
原创 网络安全编程基础
协议基础1.TCP/IP协议TCP/IP协议(传输控制/网际协议),其基本的数据传输单位一般称为数据报。 TCP协议负责把数据分成若干个数据报,并给每个数据包分配首部数据,以确保数据在接收端能够把数据还原为原来的格式。IP协议再在数据报的首部加上接收端的主机地址。 TCP/IP协议是分层的,数据传输的时候在每层之间都要加上一个首部。TCP/IP分为四层 (应用--传输(TCP/IP)
2012-06-01 01:38:39
426
WPF编程宝典学习笔记
WPF在windows编程领域的一些重要的变化:1.类似web的布局模型2.丰富的绘图模型:例如,真正的透明控件,放置多层并且具有不同透明度内容的功能,以及本地3D支持。3.丰富的文本模型:WPF最终为windows应用程序提供了在用户界面的任何位置显示丰富的样式化文本的功能,甚至可将文本和列表,浮动的图形以及其他用户界面元素结合起 来,并且如果需要现实大量文本,还可以使用高级
2012-04-18 18:25:32
105
实验一 数组、结构体和函数综合编程
一、实验目的1.复习数组,结构体和函数的相关知识;2.掌握利用数组存储数据和进行编程的方法;3.进一步掌握函数的编写。二、实验内容1.学生成绩统计从键盘输入一个班(全班最多不超过30人)学生某门课的成绩,当输入成绩为负值时,输入结束,分别实现下列功能:(1)统计不及格人数并打印不及格学生名单;(2)统计成绩在全班平均分及平均分之上的学生人数,并打印这些学生的名单;
2012-04-17 12:18:43
498
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人