- 博客(152)
- 资源 (7)
- 收藏
- 关注
原创 disassembly window
反汇编是指将非汇编目标代码转变成汇编的过程.你所看到的反汇编代码,其实是由C编译器将C语言代码直接编译成汇编代码的,并非由机器码反汇编成汇编.这样做在调试阶段有非常大的意义,比如你写的代码,语法上一点错误都没有,但是逻辑上有了错误,往往你要找到这个逻辑错误是很难的,这时候在调试的时候单步执行反汇编代码就变的很有意义了,给你举个例子:将变量十进制码转成16进制,十进制码放在变量tmp中,如果代码
2014-09-15 14:04:53 4180
原创 not in scope
用keil定义一个变量调试程序是要查看那个变量的值,显示not in scope。解决方法:把变量定义为一个全局变量,在查看这个变量的值就能正确显示该变量的值了。
2014-09-14 18:06:46 2364
转载 指令周期 机器周期 状态周期 振荡时钟周期(时钟周期)
时钟周期: 时钟周期也称为振荡周期,定义为时钟脉冲的倒数(可以这样来理解,时钟周期就是单片机外接晶振的倒数,例如12M的晶振,它的时间周期就是1/12 us),是计算机中最基本的、最小的时间单位。 在一个时钟周期内,CPU仅完成一个最基本的动作。对于某种单片机,若采用了1MHZ的时钟频率,则时钟周期为1us;若采用4MHZ的时钟频率,则时钟 周期为250ns。由
2014-09-12 23:35:04 1454
转载 STM32之NVIC
STM32的NVIC理解 (绿色和紫色分别为其他优秀网友成果,真诚的感谢。现拷贝过来汇总方便大家学习,如若构成侵权请及时联系)例程: /* Configure one bit for preemption priority */ NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1); /* Enable
2014-09-12 23:26:29 789 1
转载 Keil MDK
STM32微处理器基于ARM核,所以很多基于ARM嵌入式开发环境都可用于STM32开发平台。开发工具都可用于STM32开发。选择合适的开发环境可以加快开发进度,节省开发成本。本章将先对STM32常用的开发工具Keil MDK和IAR EWARM进行简单介绍,然后结合STM32_SK仿真评估板和STM32F103C的开发板讲解STM32片上资源使用,最后给出一个基于STM32的数据采集器的应用实例。
2014-09-07 10:27:39 3339
转载 MDK使用方法与技巧
1 原来用的装的时候选的是ARM配置,结果现在用了stm32,建工程时没有启动代码提示(copy STM32 startup code to project folder and add file to project?),重装选择了STM系列的配置,问题解决。建stm32工程的步骤:先建立两个文件夹USER和SYSTEM,SYSTEM里面是启动代码,可以直接从现有的例程拷贝过去,然后在Targe
2014-09-07 09:54:14 1619
原创 ARM Coresight
http://www.arm.com/zh/products/system-ip/debug-trace/coresight-architecture.php
2014-09-02 20:06:41 1276
原创 *** ERROR L107: ADDRESS SPACE OVERFLOW
解决方案: 1.右键单击Target选择“Options for Target'Target1'”就会出来一个框,在memory model中选择compact:variables in pdata 就可以了。 “Keil Cx51编译器提供三条编译模式控制命令:SMALL,COMPACT,LARGE,它们对变量存储器空间的影响如下。SMALL:所有变量都被定义在8051单片机的片内RA
2014-07-21 21:34:28 805
转载 linux内核版本信息说明
inux有两种版本,一个是核心(kernel)版,一个是发行(distribution)版。核心版的序号由三部分数字构成,其形式为:major.minor.patchlevel其中,majoro为主版本号,minor为次版本号,二者共同构成了当前核心版本号。patchlevel表示对当前版本的修订次数。例如,2.2.11表示对核心作用2.2 版本的第11次修订。根据约定,次版本号为奇数
2014-05-30 21:50:05 1550
转载 分享一百多套开发视频教程的下载地址
1. 北京圣思Java培训教学视频(资源共享网)2.Lucene/WebService/SVN/Ant/SpringMVC视频(学习资料库网)3.JUnit和Ant视频教程(VeryCD社区)4.《张孝祥JAVA视频教程》完整版[RMVB](东西网)5.历经5年锤炼(史上最适合初学者入门的Java基础视频)(传智播客)6.30天轻松掌握JavaWeb视频(传智播客)7.Ja
2014-05-20 08:24:33 3009 3
转载 secureCRT下的串口不能输入
【问题】用secureCRT建了一个串口COM1后,连接上开发板后,可以正确接受和显示串口的输出,但是按键输入无效。【办法】Session Options -> Connection -> Serial -> Flow Control,将原先默认选中的 RTS/CTS取消掉,再重新connect开发板,再次连上后,此时就可以从键盘输入了。 【后记 2011-
2014-05-11 17:15:03 795
原创 Linux入门必须养成的七大习惯
对于很多Linux初学者来说,在刚开始使用linux系统时会感到很多的不适。这里为大家整理了自己以前linux入门时别人告诉我的七个习惯。我相信如果你运用了这七个习惯,在你使用Linux时你会感觉更安全,便利,学到很多实用的东西,最终你会发现使用Linux也是那样的愉悦。 一、不要以根用户登录 这是你首先应该注意和遵守的。以前我们可能已经习惯了Windows,我们一直以为权
2014-05-06 22:17:21 571
转载 Windows 超级终端设置
首先需要连接串口,进行串口设置。连接串口至PC相应接口,另一端连接在硬件平台的Uart1 接口上。确认连接无误。打开超级终端软件,进入如下图1 所示界面:图1 超级终端画面填入连接名,选择图标,点击“确定”,如下图2 所示。图2 连接画面连接时选择通讯使用串口,有的PC可能有两个串口,使用时请确认选择已连接到平台的串口,可以选择 COM1、COM2.
2014-04-29 15:30:34 1559
转载 浮点数陷阱
陷阱1[cpp] view plaincopyprint?double i; for(i = 0; i != 10; i += 0.1) printf("%.1lf\n", i); 程序会打印至10.0时结束循环吗?不会。因为i永远也不可能等于10,这是个无限循环陷阱2
2014-04-06 20:40:07 546
转载 printf函数栈的问题
我们知道,C语言是调用者负责管理堆栈,所以实现有可变参数的函数。对于可变参数的函数,其压栈与清栈在编译时写在调用处,而其参数的使用则是被调用函数在运行时控制。那么,对于这个例子:C/C++ code?123456789#include int m
2014-04-05 15:01:51 1007
转载 C++与C区别及联系
C与C++的区别 C是一个结构化语言,如谭老爷子所说:它的重点在于算法和数据结构。C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到输出(或实现过程(事务)控制),而对于C++,首要考虑的是如何构造一个对象模型,让这个模型能够契合与之对应的问题域,这样就可以通过获取对象的状态信息得到输出或实现过程(事务)控制。 所以C与C++的最大区别在于它们的用于解决问题的思想方
2014-04-05 11:26:17 683
原创 typedef和#define的用法与区别
一、typedef的用法在C/C++语言中,typedef常用来定义一个标识符及关键字的别名,它是语言编译过程的一部分,但它并不实际分配内存空间,实例像:typedef int INT;typedef int ARRAY[10];typedef (int*) pINT;typedef可以增强程序的可
2014-04-02 21:12:48 502
原创 Debug版本和Release版本的区别
debug 只是在 语法和 物理存储 对待编译程序进行 查错,编译,并加入了一些调试信息。release 是发布给 客户使用的 编译模式.如果Debug无错release有问题 首先 要看看 程序逻辑上是否有问题(一般不容易找),然后在 找 编译器的"麻烦"。Debug版本包括调试信息,所以要比Release版本大很多(可能大数百K至数M)。至于是否需要DLL支持,主要看你采用的编译选
2014-04-02 15:34:33 786
原创 const和volatile变量是否可以同时修饰一个变量
问题:const和volatile是否可以同时修饰一个变量?有什么含义?答案:如果一个变量不会被本程序改变,通常可能给它加上const,但如果该变量可能被其他程序改变而本程序又在检测这个变量的值,就需要给它加上volatile,于是变量就同时有volatile和const了,这个时候i具有const和volatile的双重属性。i变量不可以在编译过程中被程序代码修改,同时编译器不得对i进行优化
2014-04-02 13:22:00 5238
原创 c语言中的bool变量
在编译C语言时有时会遇到这样的错误提示:`true' undeclared (first use in this function) or `false' undeclared (first use in this function)就是说 bool, true, false 都是undeclared,原因很简单,因为真正的C中没有这些关键字,c和早期的c++里没有关键字bool,使用BO
2014-04-01 14:32:16 692
原创 两个简单的小学数学问题
1.要求输入一个整数,将整数上为偶数的数取出,并按照原来从高位到低位相反的顺序组成一个新数,例如,输入一个整数27638496,输出为64862;源代码:#include#include#includevoid fun(long s,long *t){ int d; long s1 = 1; *t = 0;//初始化必不可少 while(s > 0) { d = s
2014-03-23 08:50:11 802
原创 交换两个变量的值(一种不那么经典的方法)
下列程序中函数fun的功能是交换两个变量值,例如a值为8,b值为3,程序运行结果应该为a为3,b为8;#include#include#includeint fun(int *x,int y)//交换两个变量的值 { int t; t = *x;//将x所指地址中的值赋给临时变量t *x = y;//将y的值赋值给x所指的地址中 return t;//返回x原来所指的值
2014-03-22 19:43:29 698
转载 再次写给我们这些浮躁的程序员
2010年初写过一篇博客(我们是一群和平年代充满浮躁与抱怨的程序员),一年过去了,社会好像更浮躁,也有网友问我这方面的问题,于是有了下面这篇文章,再次写给我们这些刚入行浮躁的程序员,如何成长,以下是列出了一些成长的心得,我们不必每条都去实践,但是优秀的程序员成长过程中总会实践里面的几条。多做项目,多思考不要害怕做事,刚毕业的同学最缺的就是工作经验,乱七八糟的项目能让你很快就了解了一
2014-03-21 09:47:21 538
转载 DOS环境
1.windows+r 或者 点击开始弹出2.输入cmd,进入dos环境3.dos下常用的命令:第1、最常用的命令 cd 改变当前目录 sys 制作DOS系统盘 copy 拷贝文件 del 删除文件 deltree 删除目录树 dir 列文件名 diskcopy 制磁盘
2014-03-19 19:39:24 733
原创 基本数据类型分析
1.数据类型数据类型为固定内存大小的别名,是创建变量的模子;类型的本质:2.变量变量是一段实际连续存储空间的别名,程序通过变量来申请命名存储空间,通过变量的名字可以使用存储空间;举例如下:#include //数据类型和变量,实际都是内存的别名int main(){ char c = 0; short s = 0; int
2014-03-18 21:41:24 585
原创 神奇的空格
lz学了c语言有一段时间了,不过毕竟还是个渣渣,这才稍稍体会到c的博大精深,稍微的一个疏忽就会导致程序运行的结果不是自己想要的。当算法对了的时候,语法上的严谨就显得尤其重要,写这篇文章,以用来勉励自己在学习的过程中应该注重细节,夯实基础,正所谓万丈高楼平地起嘛。这里举个很简单的例子,毫不起眼,客官莫要见笑:#includedouble fun(double e){ int i,k; d
2014-03-18 15:16:13 642
原创 EOF问题
EOF: http://baike.so.com/doc/630967.html编写一个程序,把输入作为字符流读取,直到遇到EOF。令其报告输入中的大写字母个数和小写字母个数。代码很简单,但是在编译通过之后运行时可能会遇到一个问题。读入字符结束应该按照如下准则运行:在windows中,应先换行,再ctrl+z,再换行;在linux中,ctrl+D代码:#include#i
2014-03-14 21:02:48 717
原创 奇数偶数平均值
编写一个程序,该程序读取整数,直到输入0。输入终止后,程序应该报告输入的偶数(不含0)的总个数、偶数的平均值、输入的奇数总个数以及奇数的平均值。易错点:不论奇数个数为多少,奇数的平均值一定是整数。不论偶数个数为多少,偶数的平均值一定也是整数。此问题涉及到输出四个结果的时候的输出格式问题,如果以%lf输出奇数平均值或者偶数平均值,那么将会有不可预料的错误。个人总结:c语法博大
2014-03-12 15:35:04 3650 1
原创 谨记(告诫自己)
编译出错:根据编译错误提示修改源代码。如果确定不懂编译错误提示,“每次用/*...*/注释掉不同部分再重新编译,直到定位到具体语法出错的位置。”链接出错:将错误信息中出现的标识符放在google里面搜一下,看其在哪个.lib中,然后在本地硬盘上搜索该.lib,如果没有,在网上搜索相关库或模块下载安装,然后将其所在目录填写到“附加依赖库所在目录”中,将其名字添加到“附加依赖库”中
2014-03-10 17:11:25 838
转载 错误票据
问题描述某涉密单位下发了某种票据,并要在年终全部收回。每张票据有唯一的ID号。全年所有票据的ID号是连续的,但ID的开始数码是随机选定的。因为工作人员疏忽,在录入ID号的时候发生了一处错误,造成了某个ID断号,另外一个ID重号。你的任务是通过编程,找出断号的ID和重号的ID。假设断号不可能发生在最大和最小号。输入格式要求程序首先输
2014-03-10 16:40:43 746
转载 剪格子
问题描述如下图所示,3 x 3 的格子中填写了一些整数。+--*--+--+|10* 1|52|+--****--+|20|30* 1|*******--+| 1| 2| 3|+--+--+--+我们沿着图中的星号线剪开,得到两个部分,每个部分的数字和都是60。本题的要求就是请你编程判定:对给定的m x n 的格子中的整数,是否可以分割为
2014-03-09 21:06:55 549
转载 带分数
问题描述100 可以表示为带分数的形式:100 = 3 + 69258 / 714。还可以表示为:100 = 82 + 3546 / 197。注意特征:带分数中,数字1~9分别出现且只出现一次(不包含0)。类似这样的带分数,100 有 11 种表示法。输入格式从标准输入读入一个正整数N (N输出格式程序输出该数字用
2014-03-09 17:38:23 681
转载 打印十字图
问题描述小明为某机构设计了一个十字型的徽标(并非红十字会啊),如下所示:..$$$$$$$$$$$$$....$...........$..$$$.$$$$$$$$$.$$$$...$.......$...$$.$$$.$$$$$.$$$.$$.$...$...$...$.$$.$.$$$.$.$$$.$.$$.$.$...$...$.$.$$.
2014-03-09 16:37:11 2780 1
原创 核桃的数量
问题描述小张是软件项目经理,他带领3个开发组。工期紧,今天都在加班呢。为鼓舞士气,小张打算给每个组发一袋核桃(据传言能补脑)。他的要求是:1. 各组的核桃数量必须相同2. 各组内必须能平分核桃(当然是不能打碎的)3. 尽量提供满足1,2条件的最小数量(节约闹革命嘛)输入格式输入包含三个正整数a, b, c,表示每个组正在加班的人数,用空格分开
2014-03-09 15:55:31 680
原创 k好数
问题描述如果一个自然数N的K进制表示中任意的相邻的两位都不是相邻的数字,那么我们就说这个数是K好数。求L位K进制数中K好数的数目。例如K = 4,L = 2的时候,所有K好数为11、13、20、22、30、31、33 共7个。由于这个数目很大,请你输出它对1000000007取模后的值。输入格式输入包含两个正整数,K和L。输出格式输出一个整数
2014-03-09 09:22:46 1263
转载 最大最小公倍数
问题描述已知一个正整数N,问从1~N中任选出三个数,他们的最小公倍数最大可以为多少。输入格式输入一个正整数N。输出格式输出一个整数,表示你找到的最小公倍数。样例输入9样例输出504数据规模与约定1 6。思路解析:找最大的三个两两互质的数,大于1的两个相邻的自然数必定互质,
2014-03-09 08:12:12 735
原创 区间K大数查询
问题描述给定一个序列,每次询问序列中第l个数到第r个数中第K大的数是哪个。输入格式第一行包含一个数n,表示序列长度。第二行包含n个正整数,表示给定的序列。第三个包含一个正整数m,表示询问个数。接下来m行,每行三个数l,r,K,表示询问序列从左往右第l个数到第r个数中,从大往小第K大的数是哪个。序列元素从1开始标号。输出格式
2014-03-08 11:39:03 894
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人