`
yunchow
  • 浏览: 319137 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论
文章列表
递归确实是一个不错的算法,可以将原来很复杂的问题简化.这里要注意的就是要确定一个出口条件.不然会出现段错误,,也就是栈溢出.   汉诺塔问题这里不再赘述,而它的出口条件也就是移动一个盘子,从源地址移动到目的位置.而如果要用递归的方法来实现就要将移动的方法简化,我们先考虑移动n-1个盘子,从源移动到临时位置,然后还剩下一个盘子,就将其移动到目的位置即可.    但是用递归也有一定的缺点,它比较占用资源,虽然算法简单. #include <iostream.h> //use namespace std; //num:个数 src:源 dst:目的地 tmp: 临时位置 ...
访问JSP的过程:如果第一次访问.jsp文件,被服务器翻译成一个java文件(servlet),然后被编译成class文件,加截到内存中.如果以后访问jsp,那就直接调用内存中的jsp实例,第一次访问jsp慢,后面的访问速度会快很多,就是这个原因了. <%@ page contentType="text/html;charset=gb2312"> <html> <body> <% out.println("hi,world"); %> ...
    在Html中使用<script>嵌入脚本代码,如下:     <script language="javascipt"> /*javaScript 代码*/ </script>    我们可以通过 <script language="javascript" src="外部脚本url"/> 来引用外部的脚本文件.   对象类型:       内置对象:String  , Math ,  Date       浏览器对象:Window,Document,H ...
/************************ * 文件名:GongYueShu.cpp * 功 能:计算两个数的最大公约数 * 作 者:若风恶魔 * 时 间:09/5/13 ************************/ #include <iostream.h> #define u32 unsigned int u32 count(u32,u32); int main(void) { u32 x,y,flag;//此两数用于接收输入的两个正整数 while(1) { cout<<"******* ...
#include <stdio.h> #include <time.h> #include<stdlib.h> #define randomize() srand((unsigned)time(NULL)) //定义一个宏用来产生随机数的 #define N 10 //调动的次数 #define RealPage 4 struct Page { int pn; //虚页号 int pfn; //实页号 int times; //struct Page *next; //指向下一个页面 }; int count,k,i ...
这是我做的最后一个单片机的实验了,不过没有把程序调通,先作个记号,以后如有时间再来慢慢调 头文件 #define uint unsigned int #define uchar unsigned char sbit lcdrs = P1^0; sbit lcdrw = P1^1; sbit lcden = P1^2; sbit key0 = P2^0;//功能键,选择时 ...
这是我做的最后一个单片机的实验了,不过没有把程序调通,先作个记号,以后如有时间再来慢慢调 主程序: #include #include #include "header.h" /****** 主函数 ********/ void main() { RTC_initial(); init(); //init1602(); //while(1); w ...
     用单片机实现数字时钟,关于时间显示,是用的1602液晶,C51单片机,然后再加一个定时器,每到一秒就动态的更新一下液晶的时间显示,在更新的时候也要计算相应的分针和时针的变化,还要注意边界问题.为了能够达到一个最好的效果,我还加了一个键盘扫描,用到了3个键,分别为功能键,增1,减1来实现用户自定义时间.      在实现过程中,用到了单片机的中断系统的相关知识,还有定时器,液晶显示,键盘的动态扫描,都是以前的知识,没什么难度.     程序如下,可以正常运行. #include <reg52.h> #define uint unsigned int #define ...
    I^2C总线的SDA与CLK都是线与关系. 为了避免混乱I^2C总线要通过总线仲裁决定总线由哪一台主机控制 I^2C总线的数据位的有效性:时钟信号为高电平期间      数据线上的数据必须保持稳定,只有在时钟信号为低电平时,    数据 ...
    用MCS-51单片机来驱动液晶显示本已不属于单片机本身的知识了,我所用到的液晶是1602液晶屏,主要是要自已去查看相关芯片的文档,所以自然对英语阅读能力是一个不小的挑战.在看文档的时候,我们也只需要注意几个相对重要的 ...
代码有问题,见谅! #include <stdio.h> #include <stdlib.h> #include<time.h> #define randomize() srand((unsigned)time(NULL)) //定义一个宏 #define uint unsigned int #define uchar unsigned char #define RES 3 //系统资源数 #define MAX_P 5 //进程数 //PCB结构体定义部分 typedef struct PCB { /* 进程标识符 ...
    单片机的串口通信看起来是很复杂的,主要是因为他用到了更多的寄存器,与前面的知识相比他更具综合能力,写起来考虑的问题自然也变多了.而前面学习过的定时器与中断将是单片机通信的基础.      单片机的中断系统中第 ...
  整了几天也没整明白单片机的A/D,D/A,以后用的着,再来整吧 贴两个程序以后再来调 程序一:DA /** DA Test **/ #include<reg52.h> sbit csda = P3^3; sbit wr = P3^6; void main() { csda = 0; wr = 0; P0 = 0xff; while(1); } 程序二:AD /** DA Test **/ #include<reg52.h> #define uint unsigned int #define uchar unsign ...
    为了实现字节数组的求和,须要先将要加的数放入数据段的一个字节数组中,然后用SI指向此数组的首地址,依次递增,将累加和放入一个寄存器.本程序功能有限,主要是用到了子程序,这就要求对现场进行保护,在子程序执行完后还要RET,恢复其现场,当然本程序没有这么复杂,只是将求和与显示分别作成了一个子程序,        当然我写的这个DISP子程序还有很多不足的地方,只能显示10以下的数,超过10将会显示出乱码,因为出于时间关系没有对其进行完善,这就要用到代码转换的内容了,因为你要用不同的进制进行显示需要进行不同的处理,可能有人会问了,为什么汇编要转换呢,因为在计算机里都是以二进制进行存储的,而显示 ...
   今天写了一个小程序,实现了把字符串从存储器的一个单元拷贝到存储器的另一个单元,程序中主要用到了字符串操作指令MOVSB,这个指令比较特殊可以对两个存储单元直接操作,用SI指向源字符串地址,DI指向符加段的目地字符串地址,用这条指令就可以很轻松的将字符串进行拷贝,如果你想循环操作,很简单,在指令前面加上REP伪指令便可实现指定次数的循环,但是要求你把你想要循环的次数送到CX,这样就可以复制字符串了.示例代码如下:    DATAS SEGMENT BUF1 DB 'HELLO,WORLD!$' COUNT EQU $-BUF1 BUF2 DB COUN ...
Global site tag (gtag.js) - Google Analytics