文档库

最新最全的文档下载
当前位置:文档库 > 简单计算机程序

简单计算机程序

#include

#include

#include

//#define j2h(x) (3.1415926*(x)/180)

sbit P32=P3^2;

sbit P23=P2^3;

sbit P22=P2^2;

sbit P21=P2^1;

sbit P20=P2^0;

//unsigned char timer0_count1=0;

code unsigned char Tab[10]={0x81,0xed,0x43,0x49,0x2d,0x19,0x11,0xcd,0x01,0x09}; code unsigned char Tab1[16]={0x81,0xed,0x43,0x49,0x2d,0x19,0x11,0xcd,0x01,0x09,0x05,0x00,0x93,0x80, 0x13,0x17};

unsigned intKeynumber;

unsigned int number;

unsigned char t=1;

unsigned char p=99;

unsigned char q=0;

void mDelay(unsigned int delay)

{

unsigned char i;

for(;delay>0;delay--)

{

for(i=0;i<124;i++)

{

_nop_();

_nop_();

_nop_();

}

}

}

/*键盘扫描程序*/

void Keyscan()

{ unsigned int key1;

Keynumber=20;

P1&=0x0f;

if((P2&0x0f)!=0x0f) //有键按下

{

mDelay(5);

if(!P23)

{

P1&=0x7f;P1|=0x70;

if(!P23) Keynumber=0;

else

{

P1&=0xbf;P1|=0xb0;

if(!P23) Keynumber=1;

else

{

P1&=0xdf;P1|=0xd0;

if(!P23) Keynumber=2;

else

{

P1&=0xef;P1|=0xe0;

if(!P23) Keynumber=3;

else Keynumber=20;

}

}

}

}

else if(!P22)

{

P1&=0x7f;P1|=0x70;

if(!P22) Keynumber=4;

else

{

P1&=0xbf;P1|=0xb0;

if(!P22) Keynumber=5;

else

{

P1&=0xdf;P1|=0xd0;

if(!P22) Keynumber=6;

else

{

P1&=0xef;P1|=0xe0;

if(!P22) Keynumber=7;

else Keynumber=20;

}

}

}

}

else if(!P21)

{

P1&=0x7f;P1|=0x70;

if(!P21) Keynumber=8;

else

{

P1&=0xbf;P1|=0xb0;

if(!P21) Keynumber=9;

else

{

P1&=0xdf;P1|=0xd0;

if(!P21) Keynumber=10;

else

{

P1&=0xef;P1|=0xe0;

if(!P21) Keynumber=11;

else Keynumber=20;

}

}

}

}

else if(!P20)

{

P1&=0x7f;P1|=0x70;

if(!P20) Keynumber=12;

else

{

P1&=0xbf;P1|=0xb0;

if(!P20) Keynumber=13;

else

{

P1&=0xdf;P1|=0xd0;

if(!P20) Keynumber=14;

else

{

P1&=0xef;P1|=0xe0;

if(!P20)

{

Keynumber=15;

}

else Keynumber=20;

}

}

}

}

else Keynumber=20;

}

else Keynumber=20;//无键按下

}

/*主程序*/

void main()

unsigned int a=0;

unsigned int b=0;

unsigned intnum;

unsigned int key=0;//Keynumber寄存

unsigned int key1;//数据寄存

unsigned int play;//算法判断

while(1)

{

Keyscan();

if(Keynumber<10)//数字输入

{

key=Keynumber;

}

if(Keynumber==20)

{

if(key<10)

{

a=key;

b=10*b+a;

number=b;

key=20;

}

if(Keynumber>11&Keynumber<16)//算法判断{

key=Keynumber;

}

if(Keynumber==20)

{

if(key>11&key<16)

{

key1=number;

b=0;

play=key;

key=20;

}

}

if(Keynumber==11)//加法运算(可以连加){

key=Keynumber;

}

if(Keynumber==20)

{

if(key==11)

{

if(play==12)

{

number=key1+number;

key=20;

}

}

}

if(Keynumber==11)//减法运算(可以连减){

key=Keynumber;

}

if(Keynumber==20)

{

if(key==11)

{

if(play==13)

{

number=key1-number;

key=20;

}

}

}

if(Keynumber==11)//乘法运算(可以连乘){

key=Keynumber;

}

if(Keynumber==20)

{

if(key==11)

{

if(play==14)

{

number=key1*number;

key=20;

}

}

}

if(Keynumber==11)//除法运算(可以连除){

key=Keynumber;

}

if(Keynumber==20)

{

if(key==11)

{

if(play==15)

{

number=key1/number;

key=20;

}

}

}

if(Keynumber==10)//切换进制{

key=Keynumber;

}

if(Keynumber==20)

{

if(key==10)

{

if(number<9999)

{

p++;

if(p>100) p=99;

P32!=P32;

}

else

{

t++;

if(t>2) t=1;

key=20;

}

}

}

if(p==99)

{

if(number<100000000&number>9999) {

if(t==1)

{P0=Tab[(number/10000)/1000];

P2=P2|0x80;P2=P2&0x8f;

P0=Tab[(number/10000)%1000/100]; P2=P2|0x40;P2=P2&0x4f;

mDelay(5);

P0=Tab[(number/10000)%100/10];

P2=P2|0x20;P2=P2&0x2f;

mDelay(5);

P0=Tab[(number/10000)%10];

P2=P2|0x10;P2=P2&0x1f;

mDelay(5);}

if(t==2)

{P0=Tab[(number%10000)/1000];

P2=P2|0x80;P2=P2&0x8f;

mDelay(5);

P0=Tab[(number%10000)%1000/100]; P2=P2|0x40;P2=P2&0x4f;

mDelay(5);

P0=Tab[(number%10000)%100/10];

P2=P2|0x20;P2=P2&0x2f;

mDelay(5);

P0=Tab[(number%10000)%10];

P2=P2|0x10;P2=P2&0x1f;

}

if(number<10000&number>999) {

P0=Tab[number/1000];

P2=P2|0x80;P2=P2&0x8f;

mDelay(5);

P0=Tab[number%1000/100];

P2=P2|0x40;P2=P2&0x4f;

mDelay(5);

P0=Tab[number%100/10];

P2=P2|0x20;P2=P2&0x2f;

mDelay(5);

P0=Tab[number%10];

P2=P2|0x10;P2=P2&0x1f;

mDelay(5);

}

if(number<1000&number>99)

{

P0=Tab[number/100];

P2=P2|0x40;P2=P2&0x4f;

mDelay(5);

P0=Tab[number%100/10];

P2=P2|0x20;P2=P2&0x2f;

mDelay(5);

P0=Tab[number%10];

P2=P2|0x10;P2=P2&0x1f;

mDelay(5);

}

if(number<100&number>9)

{

P0=Tab[number/10];

P2=P2|0x20;P2=P2&0x2f;

mDelay(5);

P0=Tab[number%10];

P2=P2|0x10;P2=P2&0x1f;

mDelay(5);

}

if(number<10|number==0)

{

P0=Tab[number%10];

P2=P2|0x10;P2=P2&0x1f;

mDelay(5);

}

}

if(p>99)

{

if(number<65536&number>4095) {

P0=Tab1[number/4096];

P2=P2|0x80;P2=P2&0x8f;

mDelay(5);

P0=Tab1[number%4096/256];

P2=P2|0x40;P2=P2&0x4f;

mDelay(5);

P0=Tab1[number%256/16];

P2=P2|0x20;P2=P2&0x2f;

mDelay(5);

P0=Tab1[number%16];

P2=P2|0x10;P2=P2&0x1f;

mDelay(5);

}

if(number<4096&number>255) {

P0=Tab1[number/256];

P2=P2|0x40;P2=P2&0x4f;

mDelay(5);

P0=Tab1[number%256/16];

P2=P2|0x20;P2=P2&0x2f;

mDelay(5);

P0=Tab1[number%16];

P2=P2|0x10;P2=P2&0x1f;

mDelay(5);

}

if(number<256&number>15)

{

P0=Tab1[number/16];

P2=P2|0x20;P2=P2&0x2f;

mDelay(5);

P0=Tab1[number%16];

P2=P2|0x10;P2=P2&0x1f;

mDelay(5);

}

if(number<16|number==0)

{

P0=Tab1[number%16];

P2=P2|0x10;P2=P2&0x1f;

mDelay(5);

}

}

}

}

简单计算机程序设计
简单计算机程序设计_计算机软件及应用_IT/计算机_专业资料。汇编实现简单计算器...
计算机简单编程示例
计算机简单编程示例 1 从键盘输入三个数,找出它们的最小值 #include &...
简易计算器程序源代码
简易计算器程序源代码_计算机软件及应用_IT/计算机_专业资料。/*jiangy...
简单计算机程序设计基础复习资料
简单计算机程序设计基础复习资料_计算机软件及应用_IT/计算机_专业资料。精品文...
如何编写一个简单程序
如何编写一个简单程序_计算机软件及应用_IT/计算机_专业资料。如何编写一个简单程序这里为大家介绍一下如何开始编写一个真正的但是简单程序程序的概念:下面一段,......
如何编写一个简单程序
如何编写一个简单程序_计算机软件及应用_IT/计算机_专业资料。如何编写一个简单程序? 如何编写一个简单程序这里为大家介绍一下如何开始编写一个真正的但是简单......
简易计算器程序
简易计算器程序_计算机软件及应用_IT/计算机_专业资料。《高级面向对象》实践报...
简单的模拟计算器程序
简单的模拟计算器程序_计算机软件及应用_IT/计算机_专业资料。模拟计算器程序,来自中南大学数学院的期末c++实践 中南大学数学院的一份模拟计算器程序 一、实验目的、......
单片机简易计算器程序代码
单片机简易计算器程序代码_计算机软件及应用_IT/计算机_专业资料 人阅读|次下载 单片机简易计算器程序代码_计算机软件及应用_IT/计算机_专业资料。#include<reg52.......
C语言简单程序代码
标签: IT技术| 程序代码| 语言|C语言简单程序代码_IT/计算机_专业资料。C语言简单程序,阶乘的和,阶乘,三角形的输出。 1 阶乘的和 #include<stdio.h> main(......
计算机简单编程示例.docx
计算机简单编程示例.docx。1 从键盘输入三个数,找出它们的最小值 #incl...
简单C语言程序的例子
简单C语言程序的例子_IT/计算机_专业资料。这是一些有关于简单程序的例子 例子...
简易计算器程序设计
简易计算器程序设计_计算机软件及应用_IT/计算机_专业资料。(1)简易计算器可...
c语言编程简单计算机代码
c语言编程简单计算机代码_计算机软件及应用_IT/计算机_专业资料 暂无评价|0人阅读|0次下载|举报文档 c语言编程简单计算机代码_计算机软件及应用_IT/计算机_专业资料......
简单计算器编程
简单计算器编程_IT/计算机_专业资料。VC++教学 计算器程序 包括 4 个数...
VB 做简易计算机程序代码
VB 做简易计算机程序代码 Private Sub Command1_Click...
简单程序设计
简单程序设计_计算机软件及应用_IT/计算机_专业资料。《程序设计语言 C1...
简单计算器程序设计
简单计算器程序设计_计算机软件及应用_IT/计算机_专业资料。课程名称 姓名 实验日期 编译原理 实验名称 简单计算器程序设计 学号 专业班级 成绩 指导老师 (①实验......
简单计算机程序设计基础复习资料
简单计算机程序设计基础复习资料_计算机软件及应用_IT/计算机_专业资料。计算机...