- 博客(39)
- 资源 (7)
- 收藏
- 关注
转载 简单使用BackgroundWorker创建多个线程的教程
简单使用BackgroundWorker创建多个线程的教程,需要的朋友可以参考一下详细出处参考:http://www.jb51.net/article/34804.htmBackgroundWorker是一个非常不错的线程控件,能避免界面假死,让线程操作你想要做的事,它学习起来很简单,但是能实现很强大的功能。发布这篇文章的目的是将最近学习到的共享出来,大家交流一下,当然我也是菜鸟,在这
2013-07-14 14:33:29 872
原创 无符号数带来的一些麻烦
c语言中存在unsigned int等无符号类型,在这些类型给我们在按位运算等操作带来便利的同时,也带了了一些不必要的麻烦,如下:1. 强制类型转换后不一定是我们需要的结果2.会造成x示例代码如下:#include void main(){ int x,y; unsigned int ux,uy; x = -1; ux = x; printf("Judg
2013-07-07 16:34:05 773
原创 寄存器位数会导致取反等操作符号扩展
在《程序员面试宝典》中看到一个经典考题unsigned char a = 0xa5;unsigned char b = ~a>>4+1;即b=0x5a>>5,即0x01011010>>5 = 0x00000010,答案理论上是2,但实际运行的时候是250,即0xfa。原因在于目前的电脑寄存器位数是32位,在做取反操作时,得到的临时结果不是0x5a,而是0xffff ff5a
2013-07-05 16:50:17 1142
转载 用异或来交换两个变量不一定提高了效率
转自:http://blog.csdn.net/solstice/article/details/5166912用异或来交换变量是错误的 陈硕 (giantchen_AT_gmail)Blog.csdn.net/Solstice 翻转一个字符串,例如把 "12345" 变成 "54321",这是一个最简单的不过的编码任务,即便是 C 语言初学者的也能毫不费力地写出类似如
2013-07-05 16:25:09 1199
原创 交换两变量a和b
int a,b;现在要交换a和b最普通方法: int temp;temp = a;a = b;b = temp;如果要求不使用临时变量方法一:加减法(缺点:a+b可能越界)a = a + b;b = a - b;// b = (a+b) - b = aa = a - b;// a = (a+b) - a = b方法二:异或a ^=
2013-05-06 12:26:08 698
原创 HDOJ_1001关于cin的一点整理
Problem DescriptionCalculate A + B.InputEach line will contain two integers A and B. Process to end of file.OutputFor each case, output A + B in one line.Sample Input
2013-04-10 19:35:05 763
原创 关于HDOJ的2901题的思路以及遇到的问题
最近想提高一下编程能力,参加了腾讯编程马拉松,结果五道题却制作出来了一道,有点受打击,于是就在HDOJ上找题练一下,随便就找到了HDOJ2901,于是开始了此文。(一开始就做这个似乎有点难的题,我开始怀疑自己是否有点好高骛远了)题目就不多说了,见http://acm.hdu.edu.cn/showproblem.php?pid=2901大意是要从接收到的字符串中找出最可能的发送字符串,已知
2013-04-09 22:36:08 624
原创 关于BinaryWriter或者BinaryReader中的编码和流字节序问题
关于TCP/IP传送文件过程:1. 传送文件名(有长度前缀的字符串); 2. 传送文件大小(INT64类型); 3. 传送具体内容;其中所谓有长度前缀的字符串,就是在发送字符串之前先发送字符串的长度,收发两端都会有对长度的处理函数。而这个长度是以7bit编码的,也就是说长度数据中改到每一个字节中最高位无效。具体可参见解析了mscorlib.dll库中的System.IO.BinaryWr
2013-01-25 15:04:17 2081
原创 关于跨网段建立TCP连接的思考
最近学习计算机网络,想弄个程序练习一下,于是就想到了在局域网内部传输文件练练手,在网上down了个程序,很快就可以跑通了,可以实现同一网段互相传输文件,但这个工作似乎很多软件已经做得很好了,比如IP信使、飞鸽传书什么的,于是就想到可以不可以跨网段传输文件呢。 另一方面,由于我一个台式机一个笔记本,经常需要在两者之间传文件,而我只有一个QQ,所以还是有实现的必要的。最开始由于传文件的
2013-01-20 20:25:34 6051 2
原创 堆排序时间复杂度的理解
堆排序 这里不再赘述堆的定义 和堆排序的讲解,详见海子的博客http://www.cnblogs.com/dolphin0520/archive/2011/10/06/2199741.html,里面图示已经很清楚了,这里首先对该博客对我的启发表示感谢。 难点:1. 对堆的理解: 从堆的定义可以看出,堆有两个性质:i. 完全二叉树(
2013-01-12 15:20:11 13930 1
原创 C#使用正则表达式提取GPS信息
用过GPS模块的人应该知道,该模块间隔1s返回GPS信息,格式是NEMA-0183标准格式,一般我们是通过串口读入字符串,然后对字符串进行处理得到经纬度信息,这里的字符串处理主要就是字符串分割函数(C#语言中对应于string.Split()函数),比如需要先按$进行分割得到很多行,对于某一行再按,分割得到各个信息字符串数组,最后用指针进行判断查找,这样的过程显然比较复杂,而且指针用错了还会报错。
2012-11-11 19:19:05 2250
原创 shell脚本中对*的理解
最近看了几行shell代码,初步认识了一下shell的脚本。网上说*是元字符,不过它代表的不是字符,也不是位置,而是数量——它指定*前边的内容可以连续重复使用任意次以使整个表达式得到匹配,这里的任意次包不包括零次呢?做了个小实验,如下图:显然对于\w这种字符、数字或者下划线、汉字,如果以\w搜索,最后一行的非\w符号没有被列出来,而如果按\w*搜索,最后一行也被列出来了,这说明*包
2012-11-09 09:21:48 1239
原创 用MapInfo软件画图生成可以被普通C程序识别的mif文件
使用软件:Google Earth 6.2,MapInfo地图生成器,MapInfo 9.5(已经破解和汉化)步骤:1.从Google Earth中得到.tab文件用MapInfo地图生成器将Google Earth里面的图片的地理信息转化成.tab文件(网上有MapInfo地图生成器的下载和使用方法,我的资源里面也有)2.在.tab文件中画图 用破解好的mapInfo
2012-10-14 16:40:01 1381
原创 double类型法运算时可能有精度损失,而decimal没有
以下摘自http://www.cnblogs.com/xiaoL/archive/2011/01/20/1939835.html,并在最后对此做了我的测试和解释一直很奇怪C#的预定义数据类型中为什么加了一个decimal,有float和double不就够了吗?今天来挖一挖。浮点型NameCTS TypeDescription
2012-10-11 19:31:27 3900
转载 一起学DNS系列(十五)DNS查询工具之NSLOOKUP的使用
上一节里我们讨论了有关DIG工具的用法,本节将对windows下nslookup工具的一些主要命令进行描述。 nslookup是多数win系统中的一个内置命令,主要目的是用来测试域名解析,属于命令行工具,顺利工作的前提是已正常安装了Tcp/Ip协议簇。 打开CMD的命令行界面,在不填写任何参数的情况下使用此命令,如下图:如上图,输入nslookup后,返回了当前的DNS服
2012-09-21 15:04:45 1129
转载 一起学DNS系列(十四)DNS查询工具之DIG的使用(2)
上节谈到了利用DIG的+trace参数追踪域名解析的过程,其实除此之外,DIG还有一些其他的参数,这节会涉及到这部分内容。 我们可以利用DIG命令很轻松的查询某一域名的A、MX等记录。如下图:以163.com为例,查询对应的A记录:同样的,如果想查询对应的MX记录,之需要将a改为mx即可。如下图:最后的A记录是附加的信息,为了简化输出结果,我们可以将这部分内容过滤掉
2012-09-21 15:04:28 853
转载 一起学DNS系列(十四)DNS查询工具之DIG的使用(1)
这几节主要讲2个常用的DNS的命令行诊断工具,分别是linux下的DIG和windows下的NSLOOKUP,我们首先来说DIG工具。 DIG,全称Domain Information Groper。原本是Linux平台上BIND服务器诊断的工具(已上传至附件),现在已经有了windows的版本,这节就是利用此工具在windows环境下来做一些DNS的诊断测试。 首先,需要将
2012-09-21 15:04:22 1091
转载 一起学DNS系列(十三)图文详说A、CNAME、MX和NS记录
前面用了12个小节对DNS的基础、以及Windows的DNS系统作了较详细的描述,下面的几节主要是说一些有关DNS应用方面的内容。DNS记录 如果把DNS的体系结构比喻成一棵倒挂的大树,那么毫无疑问,每一条记录就是组成这棵大树必不可少的枝叶了。所谓的DNS记录,其实就是具有特殊功能的一个个数据条目。在windows的DNS中,这些条目一旦被创建后,就可以实现各式的功能,比如创
2012-09-21 15:03:52 1999
转载 一起学DNS系列(十二)DNS服务器属性之调试和监视选项
接着第九节的部分,一起来探讨DNS服务器的剩下几个选项,内容比较少。 如下图:这里,我们可以对DNS数据进行有选择的记录,通常这些都是用来辅助解决问题的调试日志,由于当DNS查询和请求连接很多时,开启调试功能会对服务器性能造成一定影响,所以默认是被禁用的。我们也可以手工开启。如下图:调试日志分为4大类,每一类必须要选择一项,具体分类就不多说了。在【其他选项】中,我们可以通过
2012-09-21 15:03:24 959
转载 一起学DNS系列(十一)DNS服务器属性之高级服务器选项
接着第九节的未完的部分,我们来继续探讨DNS服务器的属性,今天主要内容是【高级】选项卡,也是DNS属性比较重要的一部分,但有趣的是,我们平时却很少修改这里的内容。不过,各个选项的含义还是需要认真理解的。 打开DNS属性,找到【高级】选项卡,如下图:这个是【高级】选项卡里的内容,这里我们一一进行讲解。第一部分: 这里的服务器版本号主要是为了电话咨询、疑难解答时候,告知工程
2012-09-21 15:03:07 1830 2
转载 一起学DNS系列(十)图、例详解DNS递归和迭代查询原理及过程 (2)
内容简介:上节里,我们用文字的形式大致描述了DNS解析的过程,为了更好的帮助大家理解整个解析过程,我做了一张DNS域名解析的分步图,如下: 在这个图里,通过8个步骤的解析过程就使得客户端可以顺利访问www.163.com 这个域...本章正文:上节里,我们用文字的形式大致描述了DNS解析的过程,为了更好的帮助大家理解整个解析过程,我做了一张DNS域名解析的分步图,如下:
2012-09-21 15:02:20 1217
转载 一起学DNS系列(十)图、例详解DNS递归和迭代查询原理及过程 (1)
上节中提到了一些有关递归查询的内容,但说的很少,也很笼统,本节将会从原理和实例两方面入手分析DNS的递归以及迭代查询。 在此之前,我们需要了解一些背景知识,以便于更好的理解今天的主题内容。 在互联网中,一个域名的顺利解析离不开两类域名服务器,只有由这两类域名服务器可以提供“权威性”的域名解析。 第一类就是国际域名管理机构,也就InterNIC,主要负责国际域名的注册和解析,第二类
2012-09-21 15:00:14 1478 1
转载 一起学DNS系列(九)DNS服务器属性之接口和转发器
本节会讨论DNS服务器属性的内容,其中会涉及到诸如转发器、递归和迭代查询等概念。 实验环境未变,TOPO图如下:打开DNS1的服务器属性选项卡。如下图:选定【属性】后,如下图:在首个选项卡中,我们可以设置那些IP地址可以接受DNS查询和解析请求,默认情况下是网卡上所有IP地址均可,但我们也可以手动指定部分地址。下一个是【转发器】选项卡,相比前一个要略显复杂。如下
2012-09-21 14:58:49 1502 1
转载 一起学DNS系列(八)DNS 客户端查询过程
本节将以之前的基础内容作为铺垫,一起探讨DNS客户端查询方面的内容。 DNS客户端的注册信息在DNS服务器中是以记录的方式体现出来的,那么客户端就可以用一些方式进行查询各类记录。相对应的,服务器会对这些查询进行响应,我们称之为解析,至于DNS内部的工作机制,我们不得而知,但可以通过一些命令和方法间接地了解DNS查询过程。为了更好的描述这个问题,我做了一张简单的TOPO图,其中DNS1为DN
2012-09-21 14:56:46 1058
转载 一起学DNS系列(七)辅助区域、存根区域操作演示 (2)
继续上一小节的内容。 2、配置辅DNS区域 安装DNS的过程和上述类似,这里不再重复。下面开始创建辅助区域。打开DNS管理器,具体操作如下图:选择【新建区域】后,如下图:直接【下一步】,如下图:我们要建立主区域的辅助区域,所以这里的区域类型选择【辅助区域】。如下图:这里输入的名称要和主区域的一致,设置完成后点击【下一步】,如下图:此时向导
2012-09-21 14:55:41 1420
转载 一起学DNS系列(七)辅助区域、存根区域操作演示 (1)
上节主要讨论了正向、反向查找区域的各个属性,今天起我们开始针对一些重要属性进行讲解和演示,工作中也会用的到,所以这部分内容比较重要。 我们知道,区域类型一共有三种,即主要区域 、辅助区域和存根区域,本节会针对辅助区域和存根区域的操作进行演示。辅助区域操作演示1、安装配置主DNS区域 辅助区域是以主要区域为蓝本,复制出一个相同,且可以为DNS客户端提供解析服务的副本区域,
2012-09-21 14:55:33 2688
转载 一起学DNS系列(六)详解正向、反向查找区域
上节演示了正向和反向区域的创建过程,本节开始着重讨论2者的属性,即区域属性,我们将以正向区域的属性为主,当然两者属性并非完全一样,区别之处会另作讲解。正向查找区域(Forward Lookup Zone) 打开a.com区域的属性,如下图:首先是【常规】选项卡,这也算是Windows的一个特色了,很多设置界面的第一个选项卡通常都是这样的。在这个选项卡里,我们需要关注以下几个属
2012-09-21 14:55:21 7786 1
转载 一起学DNS系列(五)创建DNS正向、反向查找区域
一节中简要介绍了DNS服务器及客户端的安装,尽管涉及的知识点很少,但也已经包含了DNS系统不可缺少的两部分,即DNS服务器和客户端,此外,DNS系统还包括区域和资源记录,本节主要讨论DNS正向和反向查找区域的创建。 第一节里提到了“区域”这个概念,简单来讲,区域就是DNS服务器具有权威管理权限的连续的命名空间。在一个DNS服务器里,可以创建多个区域,比如a.com和b.com,而在每一个区
2012-09-21 14:55:11 2913 1
转载 一起学DNS系列(四)DNS服务器、客户端安装及配置
经过前三节内容的铺垫,想必大家应该对DNS以及相关概念有个基本的认识了,本节就开始讨论DNS服务器的安装和配置,同时也会有客户端的设置,内容都很基础。 今天我们的试验环境是由一台服务器,用于安装DNS服务,以及一台XP系统客户机组成。具体参数和配置如下图:首先会在服务器安装好DHCP组件(具体安装过程请查阅DHCP系列),便于为客户端自动分配IP、掩码以及DNS等参数。以下是这台
2012-09-21 14:55:04 1518
转载 一起学DNS系列(三)理解计算机的多种DNS后缀选项
上节介绍了计算机主DNS后缀的一些内容,今天这一节将继续延伸此话题,同时也谈到与之相关的其他概念。 本节的试验环境是一台DC和一台客户机相连,很简单的拓扑环境。如下图: 在WINS系列中我们说到,当利用ping程序访问某一名称时,如果本机设置了WINS服务器,则会向此服务器发出解析请求,反之,系统将会利用NBNS服务通过广播的方式来解析此名称。如下图:但是,当我们p
2012-09-21 14:54:56 2609
转载 一起学DNS系列(二)理解计算机的主DNS后缀选项
原本在这一节要讲解DNS的安装,但我发现其实在此之前,还需要向大家说明几个基本的概念,首先说到的是DNS后缀。 在之前的基础章节里,我们知道了一个域名可以分为主体和后缀2部分,这里的主机我们可以理解为一台主机或者一个网络终端的名称,后缀则直接决定这个域名的性质、类别等一些重要特征。我们这里会从单机入手,理解一下单击里的DNS后缀到底是怎么一回事,把这个弄清楚了,再去理解与AD相结合的DN
2012-09-21 14:54:29 2432
转载 一起学DNS系列(一)基础、概览
本系列主要讲述有关Windows 下DNS服务器的相关知识点,由于DNS和AD结合异常紧密,所以与AD相关的DNS应用和知识将在AD专栏中讲述。 此为本系列的第一节。 我想没有什么人在访问的时候会直接输入IP地址,取而代之的是输入一串简单,容易记忆的字符,有数字的,如www.163.com;也有纯字母的,如www.qq.com ,只要网络连接没问题,就可以直接访问对应的网站。但
2012-09-21 14:52:40 1110 2
原创 wince6.0的C#调试心得(一)
最近我使用VS2005+Wince6.0开发了一个Wince Application程序。1.在调试程序时,虽然在程序中加了断点,但是提示“当前不会命中断点 尚未加载指定的模块”。经过查找资料,知道是由于.net Compact Framework 版本不兼容的问题。在添加删除程序中,看到自己装的是.net Compact Framework2.0 ,于是根据网上的资料,我在MSDN上下载
2012-09-09 15:24:22 1369
原创 Genesys开发板上跑xilkernel时的硬件设置
网上关于microblaze上跑xilkernel的详细硬件设置比较少,这里对比着官网上lwipdemo的mhs文件对硬件配置做了些改动,使得至少SDK可以把xilkernel的软件平台编译成功,具体改动如下:在XPS11.4里使用BSB生成基本的架构,其中microblaze始终125M,Local Memory为8KB(大了的话Genesys的BRAM资源不够了,不知道为何),外设方面使能
2012-09-09 15:16:18 1413
原创 Genesys开发板生成带bootloader的bit文件(可以直接从PROM中启动)
(能够写本文要非常感谢xilinx论坛上的svdmark的耐心指导)刚开始接触FPGA的嵌入式开发,就想把一些简单的程序烧入PROM中上电直接运行,像之前做单片机开发那样,却一直未能实现,最近有幸在别人的指点下可以吧自己的elf文件在SDK中编译到bit文件中,从而可以上电直接运行。对于SDK12.3的版本,由于可以直接在File -> new -> Project...
2012-09-01 21:20:34 1905
原创 iMPACT对Genesys的prom下载(ISE11.4)
使用环境:Xilinx ISE 11.4 (主要是用XPS和SDK)、Windows XP Professional SP3、Digilent GENESYS 开发板 1.生成PROM文件(mcs文件) 打开iMPACT,新建缺省工程(create a new project(.ipf)),选择Prepare a PROM File,进入如下图所示界面,选择C
2012-08-28 20:24:17 3671 1
原创 Digilent GENESYS vertex5开发板实现调用AC97(LM4550芯片)IP和LCD1602的使用
本文参考官方资料:– EDK Concepts, Tools, and Techniques http://www.xilinx.com/support/documentation/sw_manuals/edk_ctt.pdf和http://www.digilentinc.com/Data/Products/GENESYS/Genesys_bsb_design.zip以及http://w
2012-08-15 19:04:41 1917
原创 自制tiny6410开发板的调试
由于项目需要,买FriendlyARM的Tiny6410的开发板做开发,前期模块测试都是在买到的开发板上实现的,后期需要自己制作电路板,于是按照开发板的资料和网上一位大侠的mini6410的PCB做了个板子,初步测试可以用(屏幕正常、串口正常,项目里面只用了这些东西),但毕设后用买到的6410核心板在自己画的底板上测试是遇到了一些比较纠结的问题:1.测试RFID模块时,在买到的开发板上可以用的
2012-07-24 10:09:18 1274
原创 一种使用Microsoft ActiveSync 4.5进行WINCE的同步时避免电脑死机的方法
使用VS2005+WINCE6.0做嵌入式开发时会用到同步软件Microsoft ActiveSync 4.5用作调试和下载。使用Microsoft ActiveSync 4.5进行WINCE的同步时,如果经常插拔USB很容易引起电脑死机,突然发现一种可以90%解决死机的方法。首先,插入USB前禁止连接USB,如下设置:再插入USB,等一会儿(设备管理器识别USB设备)
2012-07-20 20:33:27 1212
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人