上一页 1 ··· 3 4 5 6 7
摘要: 储油问题 一辆重型卡车的油耗是1L/km,载油能力为500L,今欲穿过1000km的沙漠。由于卡车一次过不了沙漠,因此司机必须在沿途设几个储油点。问:如何建立这些储油点,每一个储油点储存多少油才能使卡车以最小油耗通过沙漠? 实例解析: 本例采用倒推法来解题。所谓倒推法,就是在不知初始值的情况下,通过某种递推关系,由最终值推算出初始值的方法。储油问题和猴子吃桃子问题等都是典型的倒退问题。 显然,卡车要通过沙漠,必须在离起点500km处存储500L油,如图17-1所示。 图17-1 储油点及储油量示意图 而要在500km处储油500L,需要卡车从某处(... 阅读全文
posted @ 2013-06-27 17:37 Leo.cheng 阅读(374) 评论(0) 推荐(0)
摘要: 小续 算法只是一种思想,在很大程度上,其实现都依赖于数据结构,所以这里提取出一些典型的算法和数据结构,包括排序以及链表/堆栈/队列等结构的操作------------------------------------------------------冒泡法排序 数组中有N个整数,用冒泡法将他们从小到大(或从大到小)排序。 实例解析: 排序是非常重要且很常用的一种操作,有冒泡排序、选择排序、插入排序、希尔排序、快速排序、堆排序等多种方法。这里我们先简单介绍前三种排序算法和代码的实现,其余算法将在后续课程《数据结构》中学习到。 冒泡法排序是C语言教材中已经介绍过的排序方法,与其他排序... 阅读全文
posted @ 2013-06-27 17:37 Leo.cheng 阅读(384) 评论(0) 推荐(0)
摘要: 报数游戏 n个小孩围成一圈,从1开始报数,报到k的人退出,其余人重新从1报数,仍是报到k退出,直到圈中只剩m个小孩,问最后剩下的是哪些人? 实例解析: 本题在这里将借助于数组求解,用链表求解的方法放在第17章算法与数据结构实例中。 设计思路:用数组元素模拟小孩。定义一个数组,每个元素存入一个数值作为小孩的编号,然后从第一个元素开始报数,报到k的人将编号清0,表示已退出圈子。在报数的过程中,凡是编号为0的人不再参加报数。当数组所有元素都报数后,重新从数组头开始报数,周而复始,直到圈中只剩m个小孩。#define N 100 int main() {int a[N], n, m, ... 阅读全文
posted @ 2013-06-27 17:37 Leo.cheng 阅读(432) 评论(0) 推荐(0)
摘要: 利用位运算求整数的原码或补码 利用位运算求任意整数的原码或补码。 实例解析: 整数在内存中本来就是用补码存放的,若要求出补码,只需求出内存中的每一位二进制数即可。而原码,若是负数,则需要将补码减1然后取反(最高位不取反)。 程序代码:#include "stdio.h"int main(){int n, i; char k; clrscr(); scanf("%d",&n); printf("要转成什么?\n"); printf("1、原码\n"); printf("2、补码\n");  阅读全文
posted @ 2013-06-27 17:37 Leo.cheng 阅读(558) 评论(0) 推荐(0)
摘要: 数组作计数器 一篇文章共有10行,每行最多80字符,编程统计文章中26个英文字母分别出现的次数(不区分大小写)。 实例解析: 文章的内容可以通过键盘输入到一个二维数组中:char s[10][81]; for(i = 0; i = 65 && s[i][j] = 97 && s[i][j] int palindrome(char *p) {int i, n; n = strlen(p); //测试字符串长度 for(i = 0; i int main() {int prime(int); int i, count = 0; for(i = 1... 阅读全文
posted @ 2013-06-27 17:37 Leo.cheng 阅读(304) 评论(0) 推荐(0)
摘要: 在刚接触FS2410时,其实这个测试也没有多大意义,但是对于以后来说,当一个产品做成功时,产品测试还是一个必须经过的一个阶段,所以这个流程还是有必要走一下! 在非操作系统下,主要进行RTC测试,按键测试,蜂鸣器测试,ADC测试,IIC测试,触摸屏测试,LCD屏测试,音频输出测试,音频输... 阅读全文
posted @ 2013-06-27 17:36 Leo.cheng 阅读(456) 评论(0) 推荐(0)
摘要: 平台: 深圳市优龙科技有限公司的FS2410(基于ARM9)准备:1、用串口(UART1,J8)线与PC机相连,这个是用来传输数据和显示信息的2、连接USB数据下载线(usb device),注意需要自己装usb驱动,这个是用来下载文件的3、设置好串口工具(超级终端或DNW工具)的参数说明:1、S... 阅读全文
posted @ 2013-06-27 17:36 Leo.cheng 阅读(667) 评论(0) 推荐(0)
摘要: Boot Loader启动过程分析一、 Boot Loader的概念和功能 1、嵌入式Linux软件结构与分布在一般情况下嵌入式Linux系统中的软件主要分为以下及部分:(1)引导加载程序:其中包括内部ROM中的固化启动代码和Boot Loader两部分。而这个内部固化ROM是厂家在芯片生产时候固... 阅读全文
posted @ 2013-06-27 17:36 Leo.cheng 阅读(1795) 评论(0) 推荐(0)
摘要: Preface Makefile固然可以帮助make完成它的使命,但要承认的是,编写Makefile确实不是一件轻松的事,尤其对于一个较大的项目而言更是如此。那么,有没有一种轻松的手段生成Makefile而同时又能让我们享受make的优越性呢?autotools系列工具正是为此而设的,它只需用户输... 阅读全文
posted @ 2013-06-27 17:36 Leo.cheng 阅读(1198) 评论(0) 推荐(0)
摘要: 查看软件xxx安装内容:dpkg -L xxx查找软件库中的软件:apt-cache search 正则表达式查找软件库中的软件:aptitude search 软件包查找文件属于哪个包:dpkg -S filename查找文件属于哪个包:apt-file search filename查询软件xx... 阅读全文
posted @ 2013-06-27 17:36 Leo.cheng 阅读(482) 评论(0) 推荐(0)
摘要: google chrome google浏览器一直都是深受大家喜爱的一个浏览器,而且其跨平台性比较好,这对于书签同步来说是非常重要的。但是在linux下,默认的是火弧浏览器,而google的安装又不像windows这么方便,最近总有人问如何安装,所以还是觉得有必要写这样一篇博客。下载googl... 阅读全文
posted @ 2013-06-27 17:36 Leo.cheng 阅读(2821) 评论(0) 推荐(0)
摘要: IIC总线工作原理 I2C总线进行数据传送时,时钟信号为高电平期间,数据线上的数据必须保持稳定,只有在时钟线上的信号为低电平期间,数据线上的高电平或低电平状态才允许变化。起始和终止信号 :SCL线为高电平期间,SDA线由高电平向低电平的变化表示起始信号;SCL线为高电平期间,SDA线由低电平向... 阅读全文
posted @ 2013-06-27 17:36 Leo.cheng 阅读(978) 评论(0) 推荐(0)
摘要: 最近一直在学嵌入式,蛋疼啊,专业学软件的去搞硬件原理,真心有点伤不起,比较无聊,希望尽早脱离这个状态。 中午在林同学那里看到他在MFC上应用了Skin++皮肤,这是一款通用的软件换肤套件,支持各种系统,无聊啊,皮肤神马的以前也搞过,不过以前没玩过MFC的,以前是玩的SDK套件中的DirectUI(炫彩界面库),刚好硬件看得想睡的时候,就把这套皮肤拿来玩了一下,效果还不错,有图有真相,下面是一套机器人皮肤。 虽然会MFC,不过很少用MFC来做软件,我一般是用SDK和delphi做开发,于是我想,如果这套皮肤也能用于delphi,该多好啊。 然后看了下Skin++的这个版本,它是以DLL... 阅读全文
posted @ 2013-06-27 17:36 Leo.cheng 阅读(619) 评论(0) 推荐(0)
摘要: 鼠标右键新建添加RTF文档 今天想将空间日志作个本地备份,但是苦于找不到适合的文本工具,因为一般的文本编辑工具都不支持贴图。 虽然word就可以满足我们的需求,但文件格式不用doc而是rtf 而我以前清理注册表时把所有的无用文件都删除了,所有现在需要重新加入RTF文档。 我们既可以享用wor... 阅读全文
posted @ 2013-06-27 17:35 Leo.cheng 阅读(3370) 评论(0) 推荐(0)
摘要: 模拟电路基础知识问答整理mystery1、温度对半导体材料的导电性能有什么影响? 答:温度对半导体的导电性能有很大影响。当温度升高时,半导体材料内的自由电子和空穴数量迅速增加,半导体的导电性能将迅速提高。2、什么是本征半导体和杂质半导体? 答:化学成分纯净的半导体就是本征半导体。在本征半导体中掺入某... 阅读全文
posted @ 2013-06-27 17:35 Leo.cheng 阅读(2501) 评论(0) 推荐(1)
摘要: 矩阵键盘通常如下图设计 下面就以按下S16键来讲解其思路: 首先:P3的高位P3.4~P3.7输出为0,低位P3.0~P3.3输出为1;即P3=0x0F,当按下S16键后(有消抖动过程),P3.3的值为0,则P3的值更新为0x07; 其次:P3的高位P3.4~P3.7输出为1,低位P3.0~P... 阅读全文
posted @ 2013-06-27 17:35 Leo.cheng 阅读(695) 评论(0) 推荐(0)
摘要: 单片机定时器实用方法总结第一部分:51系列定时器定时/计数器 0 和定时/计数器1都有4种定时模式。 16位定时器对内部机器周期进行技术,机器周期加1,定时器值加1,1MHZ模式下,一个机器周期为1us 。 定时器工作模式寄存器TMOD,不可位寻址,需整体赋值,高4位用于定时器1,第四位用于定时器... 阅读全文
posted @ 2013-06-27 17:35 Leo.cheng 阅读(547) 评论(0) 推荐(0)
摘要: 模拟电路基础By 成鹏致远资料#.三极管作用三极管的主要作用是电流放大,以共发射极接法为例(信号从基极输入,从集电极输出,发射极接地),当基极电压UB有一个微小的的变化时,基极电流IB也会随之有一小的变化,受基极电流IB的控制,集电极电流IC会有一个很大的变化,基极电流IB越大,集电极电流IC也越大... 阅读全文
posted @ 2013-06-27 17:35 Leo.cheng 阅读(4350) 评论(0) 推荐(0)
摘要: 嵌入式系统硬件基础By 成鹏致远第一章 常用硬件——>嵌入式系统常用的硬件器件,主要包括分立器件、光电半导体、逻辑IC、模拟IC以及存储器共五大类——>分立器件主要有:二极管、三极管、电阻、电容、电感以及场效应管等——>二极管的主要特性是单向导电性——>二极管按其用途可分为:整流二极管、稳压二极管、... 阅读全文
posted @ 2013-06-27 17:35 Leo.cheng 阅读(1421) 评论(0) 推荐(2)
摘要: 欺骗的艺术整理篇 人们对于绝对安全的渴望常常导致他们满足于虚假的安全感之中。 人为因素才是安全的软肋 安全,通常情况下仅仅是个幻想,由其是轻信、好奇和无知存在的时候。 二十世纪最受尊敬的科学家爱因斯坦这样说道:“只有两种事物是无穷尽的――宇宙和人类的愚蠢。但对于前者,我不敢确定。” 安全不是一件产品... 阅读全文
posted @ 2013-06-27 17:35 Leo.cheng 阅读(276) 评论(0) 推荐(0)
摘要: 第一章:小试牛刀#变量赋值var = value不同于var=value把var=value写成var = value是一个常见的错误前者是赋值操作,后者是相等操作#let命令可以直接执行基本的算数操作#bcbc是一个用于数学运算的高级工具,这个精密计算器包含了大量的选项借助bc可以执行浮点数运算并... 阅读全文
posted @ 2013-06-27 17:35 Leo.cheng 阅读(998) 评论(0) 推荐(0)
摘要: 1.mystery引入 1)超文本传输协议(HTTP)是一种应用于分布式、合作式、多媒体信息系统的应用层协议 2)工作原理 1)客户端一台客户机与服务器建立连接后,会发送一个请求给服务器,请求方式的格式为:统一资源定位符(URL)、协议版本号,后边是MIME信息,包括请求修饰符、客户机信息和... 阅读全文
posted @ 2013-06-27 17:35 Leo.cheng 阅读(3056) 评论(1) 推荐(2)
摘要: 1.mystery引入 1)系统入侵步骤:系统发现->漏洞探测->漏洞利用->痕迹清除 2)扫描器分类:主机与网络扫描器;端口服务扫描器;服务漏洞扫描器 3)TCP端口扫描技术分为三种:全连接扫描;SYN扫描以及FIN扫描 4)UDP端口扫描技术一般采用ICMP报文端口不可达的信息来识别UD... 阅读全文
posted @ 2013-06-27 17:35 Leo.cheng 阅读(1042) 评论(0) 推荐(0)
摘要: 1.mystery引入 1)高性能的网络服务程序分为单线程重复式网络服务、多进程网络服务 、多线程网络服务、线程池网络服务和IO多路复用网络服务等 2)单线程重复式是最基本的一种TCP服务模式,其实现简单,但是用户体验差,由于我前面日志中已经作过介绍,这里就不再赘述了 3)多进程网络服务是利用... 阅读全文
posted @ 2013-06-27 17:34 Leo.cheng 阅读(798) 评论(0) 推荐(0)
摘要: 1.mystery引入 1)设备驱动程序对外提供如下的功能: 1)设备初始化:对硬件设备进行初始化操作 2)数据交换:数据交换包括由内核层向硬件层传送数据、从硬件层读取数据到内核层; 应用程序向设备文件传送数据、设备文件向应用程序回送数据 3)设备请求与检测:检测各硬件设备的各种参数信息、错误信息 4)设备释放:设备使用完后的资源释放 2)驱动一般分为字符设备驱动、块设备驱动和网络设备驱动 1)字符设备驱动:可以按字节操作的方式对设备文件进行存取,一般对应慢速设备,例如串口设备 2)块设备驱动:是按数据块的方式对设备文件进行访问,一般... 阅读全文
posted @ 2013-06-27 17:34 Leo.cheng 阅读(1921) 评论(0) 推荐(0)
摘要: linux之configure,pkg-config和PKG_CONFIG_PATH1.初衷1)前面在装gtk时冒出来一个pkg-config,当时虽然不大清楚它是个什么东西,不过大致了解了下它的作用 2)在后面的过程中,又出现了configure和pkg_config_path,总觉得它们之间有... 阅读全文
posted @ 2013-06-27 17:34 Leo.cheng 阅读(2879) 评论(0) 推荐(0)
摘要: 1.源码//connect-mysql.c#include #include "/usr/include/mysql/mysql.h"int main(){ MYSQL mysql;//need a instance to init int t,r;//connect the database mysql_init(&mysql); if(!mysql_real_connect(&mysql,"localhost","root","yourpassword","mysql",0, 阅读全文
posted @ 2013-06-27 17:34 Leo.cheng 阅读(899) 评论(0) 推荐(0)
摘要: 1.安装 Mysql Server# yum install mysql mysql-server 可以到mysql官网去下载,我下载的是通用版本。你需要下载下面四个文件就可以了。 mysql-client --------客户端包 mysql-server --------主服务器包 mysql-devel ---------开发包,作为开发者,这个是必须的,其提供开发用的头文件和库文件 mysql-shared ----共享组建包-----外部客户端使用的共享库 然后安装就可以了2.开启 MySQL server 及开机启动 MySQL# systemctl start mys... 阅读全文
posted @ 2013-06-27 17:34 Leo.cheng 阅读(2153) 评论(0) 推荐(0)
摘要: feorda下gtk安装详解1.yum在线安装gtk 1)pkg-config -version查看pkg-config的版本(本机测试是0.25) 2)安装必要组建:(在root权限下)yum install gtk2 gtk2-devel gtk2-devel-docs 3)可能还需要组建(可... 阅读全文
posted @ 2013-06-27 17:34 Leo.cheng 阅读(972) 评论(0) 推荐(0)
摘要: 1.mystery引入 1)本学期学了计算机网络,对一些网络底层的东西还是不大了解 2)目前IP网络流行3种通信模式,分别是单播/广播与组播 3)根据Internet关于IP地址的规定,IP地址分为A/B/C/D/E共5类 4)A到C类地址是目前广泛应用的普通IP地址,E类地址保留为将来使用... 阅读全文
posted @ 2013-06-27 17:34 Leo.cheng 阅读(1013) 评论(0) 推荐(0)
摘要: 1.mystery引入 1)本学期学的ARP协议和NTP协议都属于广播技术的实现,所以借此机会了解下广播技术的底层原理 2)在IP地址中,如果最后一个数字为255,则一定是一个广播地址 3)广播地址分为网络广播地址/受限广播地址/子网广播地址和全部子网广播地址 4)在设计广播程序时,要进行套接... 阅读全文
posted @ 2013-06-27 17:34 Leo.cheng 阅读(1197) 评论(0) 推荐(0)
摘要: 1.mystery引入 1)网络嗅探属于网络攻防类的安全软件,其基于原始套接字技术开发的 2)原始套接字是一种套接字底层技术,它工作在网络层 3)谈到网络安全,刚好本学期学过这门课程,这里mystery总结下基于原始套接字技术开发的网络安全软件类型: 木马中的通信模块:为了躲避杀毒软件的检测... 阅读全文
posted @ 2013-06-27 17:34 Leo.cheng 阅读(2428) 评论(0) 推荐(0)
摘要: 1.问题 今天在编译一个基于原始套接字实现网络数据包嗅探程序时出现了如下错误: 警告: 隐式声明与内建函数 ‘exit’ 不兼容2.解决方案 后面发现没有把stdlib.h包含进来 上网查时发现网上有很多人有这个问题 所以今天记下,留以作为这个错误的解决方法。 阅读全文
posted @ 2013-06-27 17:34 Leo.cheng 阅读(464) 评论(0) 推荐(0)
摘要: 1.mystery引入 1)Select是一种多路复用IO输入输出模式,在linux的输入输出编程中通过select的轮询机制,发现可用/可读或可写的接口。 2)低级socket程序中有一个共同点:都是基于阻塞式的编程方式 3)非阻塞式是函数调用时不阻塞,不管函数执行成功与否,都会立即返回。 ... 阅读全文
posted @ 2013-06-27 17:34 Leo.cheng 阅读(627) 评论(0) 推荐(0)
摘要: 1.mystery引入 1)无连接编程也称为UDP编程,是采用UDP报文的形式完成的网络通信 2)UDP是一种对等通信,本身不区分服务器端和客户端 3)对等通信,最容易想到的就是P2P,P2P是一种点对点的通信方式,各节点之间遵循对等的关系2.UDP实例 1) 示例采用UDP报文向自身发送消... 阅读全文
posted @ 2013-06-27 17:34 Leo.cheng 阅读(260) 评论(0) 推荐(0)
摘要: 1.mystery引入 1)UDP也可以编写出C/S程序 ,另外TCP也可以编写点对点通信。 2)网络的本质就是资源共享,当前流行的P2P应用正好暗合了这种精神。 3)当前流行的Web服务,其标准协议是HTTP,很多从事Web应用程序开发的开发者,从事的就是这种应用的网络编程,所采用的开 发模... 阅读全文
posted @ 2013-06-27 17:34 Leo.cheng 阅读(358) 评论(0) 推荐(0)
摘要: 1.同步机制 线程同步机制主要有:互斥量/信号量/条件变量/读写锁等。2.技术示例 创建2个计数线程A和B,每次计数加1,当为偶数时,A线程计数;当为奇数时,B线程计数。 源码://thread_mutex_cond.c#include #include #include #include #... 阅读全文
posted @ 2013-06-27 17:34 Leo.cheng 阅读(295) 评论(0) 推荐(0)
摘要: 1.错误现象:undefined reference to 'pthread_create'undefined reference to 'pthread_join'2.问题原因: pthread 库不是 Linux 系统默认的库,连接时需要使用静态库 libpthread.a,所以在使用 pt... 阅读全文
posted @ 2013-06-27 17:34 Leo.cheng 阅读(1973) 评论(0) 推荐(0)
摘要: 1.机制 消息队列的运行方式与命名管道非常相似。欲与其他进程通信的进程只需要将消息发送到消息队列中,目的进程就从消息队列中读取需要的消息。2.源码1)发送方//msg_send.c#include #include #include #include #include int main(){ ... 阅读全文
posted @ 2013-06-27 17:34 Leo.cheng 阅读(406) 评论(0) 推荐(0)
上一页 1 ··· 3 4 5 6 7