导航:首页 > 操作系统 > 单片机怎么退格

单片机怎么退格

发布时间:2023-05-09 17:54:44

㈠ 用c语言给单片机编程,当输入错了后怎样退格重新输入,用c语言怎样写

IO口的输入输出是通过对单片机寄存器的配置来实现的。
C51的单并扒片机IO口本来就是双向的不需要设置。
STM32单片机的IO口用C语言塌谈的设置方法绝衫昌如下:
void LED_Config(void)
{
GPIO_InitTypeDef GPIO_Structure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE);
//PC10-LED(指示灯)
GPIO_Structure.GPIO_Pin = GPIO_Pin_10;
GPIO_Structure.GPIO_Speed = GPIO_Speed_2MHz;
GPIO_Structure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_Init(GPIOC,&GPIO_Structure); //LED

㈡ 51单片机怎么跳出死循环,复位

题主是否想询问“51单片机怎么跳出死循环”?按复位键。51单片机因为故障会经常陷入死循环,可以通过按复位键跳出。51单片机是单片微型计算机的简称,是对所有兼容Intel8031指令系统的单片机的统称。

㈢ 单片机keilC怎么编写退格删除键功能的程序代码

你是写单片机程序还是什么程序呢禅拦首???
我这里有一抄个控制单片机键贺数衡蚂盘的程序。
#include<reg52.h>
sbit key1=P3^4;
sbit d1=P1^0;
#define uchar unsigned char
uchar code tab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};
uchar num;
void delay()
void main()
{
P2=0xfe;
P3=0xff;
while(1)
{
zd if(key1==0)
{
d1=0;
num++;
while(!key1);//判断按键是否放开
}
else
d1=1;
P0=tab[num];

}
}

void delay()
{
uchar i,j;
for(i=0;i<120;i++)
for(j=0;j<120;j++);
}

㈣ 怎么找到单片机的复位键单片机的复位键是干什么的

不一定所有的系统都有复位键,查芯片手册,根据复位脚的位置来找

㈤ 用单片机C语言控制6位密码锁。要求有一个清除键和确认键,密码输错了会有报警音。请高手帮助了

我找到了一个,来自《51单片机C语言应用技术开发大全》
SCH图正在绘制中。。。

#include <REGX51.H>//51单片机的头文件
typedef unsigned char uchar; //类型定义,定义uchar类型
typedef unsigned int uint; //类型定义,定义uint 类型
//键盘子程序相关说明。
#define BLANKCHAR 10 //定义空白常量
#define PCHAR 11 //定义字符P常量
#define OPENCHAR 12 //定义开锁字符常量
#define ALARMCHAR 13 //定义字符A常量
#define LINECHAR 14 //定义字符-常量
#define BACKKEY 0X0D //定义退格键常量
#define ENTERKEY 0X0F //定义确认键常量
#define LOCKKEY 0X0E //定义闭锁键常量
#define NO_KEY 20 //定义无按键返回值
#define KEYPORT P2 //定义键盘端扮盯口
//Delay1Ms
void Delay1Ms()
{
uint i;
for (i=0;i<1000;i++);
}
//定义按键扫描码表 按键扫描时,4位列线和4位行线组成字节数据表
uchar code KEYCODE[]=
{0XEE,0XED,0XEB,0XE7,
0XDE,0XDD,0XDB,0XD7,
0XBE,0XBD,0XBB,0XB7,
0X7E,0X7D,0X7B,0X77};
uchar KeyPre; //保存上次扫描按键的键值
uchar KeyUp;
//用于控制按键去抖动操作。1:扫描时去抖动 2:等待释放 3:释放时去抖动。
#define LEDPORT P0 //定义显示器段码输出端口
#define LEDCON P1 //定义显示器位控制端口
uchar code SEGCODE[]=
{0XC0,0XF9,0XA4,0XB0,0X99,0X92,0X82,0XF8,0X80,0X90,// 0~9的共阳极代码
0xff,//不显示的共阳极段码侍缺慎
0X8C,//字符P的共阳极段码
0X8F,//┝的共阳极段码
0X88,//字符A的共阳极段码
0XBF,//字符-的共阳极段码
};
//定义LED位码控制码
uchar code BITCODE[]={0Xfe,0Xfd,0Xfb,0Xf7,0Xef,0Xdf,0Xbf,0X7f};
uchar DispBuf[6]; //保存显示的字符
bit DispNormal; //控制显示时,是正常显示还是闪烁显示。
uchar DispCnt; /老敬/控制闪烁显示时的频率。
#define SHORT_TIME 10 //蜂鸣器响200ms
#define LONG_TIME 100 //蜂鸣器响2s
#define LONGER_TIME 9000 //蜂鸣器响3 minutes
sbit ALARMCON=P3^4; //定义报警控制引脚
bit AlarmEnable; //是否报警或声音提示
uint AlarmTime; //控制报警时间长度
sbit LOCKCON=P3^3; //定义电子锁控制引脚
uchar code PassWord[]={1,2,3,4,5}; //定义初时密码表
uchar PassInBuf[6]; //保存输入的密码字符
uchar PassPosi; //用户输入密码字符存放在PassInBuf[]的位置。
bit TimerBit; //20ms定时时间到
uchar SysMode; //系统所处模式 0:输入密码模式 1:报警模式 2:开锁模式
uchar ErrorCnt; //用户连续输入密码出错次数。
/*
入口参数:
FillChar:写入缓冲区的字符
出口参数:无
*/
void Fill_Buf(uchar FillChar)
{
uchar i;
for(i=0;i<6;i++)
{
DispBuf[i]=FillChar;//用字符FillChar填充DispBuf[i]
PassInBuf[i]=FillChar; //用字符FillChar填充PassInBuf [i]
}
}
void Fill_Buf_P()
{
Fill_Buf(BLANKCHAR); // DispBuf[1..5]= ' '
DispBuf[0]=PCHAR;// DispBuf[0]='P'
}
void Fill_Buf_O()
{
Fill_Buf(BLANKCHAR); // DispBuf[1..5]= ' '
DispBuf[0]=OPENCHAR; // DispBuf[0]='┝'
}
void Fill_Buf_A()
{
Fill_Buf(LINECHAR); // DispBuf[1..5]= ' -----'
DispBuf[0]=ALARMCHAR; // DispBuf[0]='A'
}
/*
入口参数:
DispPosi:要显示数据的LED号。
DispChar:要显示的内容。
出口参数:无
*/
void Disp_Led_Sin(uchar DispChar,uchar DispPosi)
{
LEDPORT=SEGCODE[DispChar];//输出显示段码
LEDCON&=BITCODE[DispPosi];//输出显示位码
Delay1Ms(); //延时1MS
LEDCON|=0X3F;//关闭显示器
}
/*(2)关闭显示函数Disp_Led_OFF。
函数Disp_Led_OFF在显示器上显示空白字符,主要用在闪烁显示。函数通过6次调用Disp_Led_Sin实现所需功能。代码如下:*/
void Disp_Led_OFF()
{
uchar i;
LEDCON|=0X3F;// 关闭显示器
for(i=0;i<6;i++)
{
Disp_Led_Sin(BLANKCHAR,i);//逐个显示空白字符
}
}
void Disp_Led_All()
{
uchar i;
LEDCON|=0X3F; // 关闭显示器
for(i=0;i<6;i++)
{
Disp_Led_Sin(DispBuf[i],i); //显示DispBuf[]中的数值
}
}
void Disp_LED()
{
DispCnt++;
DispCnt%=10;
if(DispCnt==0)
{
DispNormal=~DispNormal;//200ms将闪烁显示控制位取反
}
if(SysMode==1)
{//报警模式,闪烁显示
if(!DispNormal)
{
Disp_Led_OFF();//显示空白字符
return;
}
}
Disp_Led_All();//显示DispBuf[]中的数值
}
/*
入口参数:
stime:蜂鸣器鸣叫时间。
出口参数:无
*/
void Sys_Speaker(uint stime)
{
AlarmEnable=1;//允许报警
AlarmTime=stime;//报警时间长短
}
void Sys_Alarm()
{
if(AlarmEnable==1)
{//允许报警
ALARMCON=0;//报警
AlarmTime--;
if(AlarmTime==0)
{//停止报警时间到
AlarmEnable=0;
ALARMCON=1;//禁止报警
if(SysMode==1)
{//报警发生在模式1时,要返回模式0
SysMode=0;
Fill_Buf_P();//显示P
}
}
}
}
/*
入口参数:无
出口参数:按键值或无按键
*/
uchar Find_Key()
{
uchar KeyTemp,i;
KEYPORT=0xf0;//行线输出0,列线输出全1
KeyTemp=KEYPORT;//读按键端口值
if(KeyTemp==0xf0)
return NO_KEY;//无键按下,返回
KEYPORT=KeyTemp|0x0f;//列线输出,行线输入
KeyTemp=KEYPORT;//读取按键端口值
for(i=0;i<16;i++)
{
if(KeyTemp==KEYCODE[i])//根据按键端口扫描值,查找按键值
return i;//返回按键值
}
return NO_KEY;
}
/*
入口参数:无
出口参数:按键值或无按键
*/
uchar Scan_Key()
{
uchar KeyTemp;
KeyTemp=Find_Key();//扫描键盘,获得按键值
if(KeyTemp==NO_KEY)
{
if(KeyUp<2)
{//无按键按下,返回
KeyUp=0;
return NO_KEY;
}
if(KeyUp==2)
{//按键要释放,延时去抖动
KeyUp=3;
return NO_KEY;
}
if(KeyUp==3)
{//按键释放,返回键值
KeyUp=0;
return KeyPre;
}
}
else
{
if(KeyUp==0)
{//有键按下,保存键值
KeyUp=1;
KeyPre=KeyTemp;
}
else if(KeyUp==1)
{//去抖动后,再次测到有按键按下
if( KeyPre==KeyTemp)
KeyUp=2;
else
KeyPre=KeyTemp;
} else if(KeyUp==3)
{//等待按键释放
KeyUp=2;
}
}
return NO_KEY;
}
/*
入口参数:
Key:按键值
出口参数:无
*/
void Key_Process(uchar Key)
{
uchar i;
if(Key==NO_KEY)
return ;//无按键,不处理
switch(SysMode)
{
case 0://输入密码
switch(Key)
{
case 0:
case 1:
case 2:
case 3:
case 4:
case 5:
case 6:
case 7:
case 8:
case 9:
DispBuf[PassPosi]=LINECHAR;//显示'-'
PassInBuf[PassPosi]=Key;//保存用户输入的密码
if(PassPosi<5)
PassPosi++;//调整密码输入位置
Sys_Speaker(SHORT_TIME);//发按键提示音
break;
case BACKKEY://退格键
DispBuf[PassPosi]=BLANKCHAR;//显示' '
PassInBuf[PassPosi]=BLANKCHAR;//清除当前位置的密码
if(PassPosi>1)
PassPosi--;//调整显示位置
Sys_Speaker(SHORT_TIME);//发按键提示音
break;
case ENTERKEY://确定按键
for(i=0;i<5;i++)
{//比较用户输入密码与系统预设密码是否一致
if(PassInBuf[i+1]!=PassWord[i])
break;
}
if(i>=5)
{//输入密码正确
Fill_Buf_O();//显示开锁状态
PassPosi=1;
LOCKCON=1;//开锁
ErrorCnt=0;
Sys_Speaker(LONG_TIME);//发长提示音
SysMode=2;//转模式2
}
else
{
ErrorCnt++;//出错次数加一
if(ErrorCnt>2)
{//次数超过3次
ErrorCnt=0;
Fill_Buf_A();//显示报警状态
PassPosi=1;
Sys_Speaker(LONGER_TIME);//发报警音
SysMode=1;
}
else
{//出错次数少于3次,用户重新输入
Fill_Buf_P();
PassPosi=1;
Sys_Speaker(LONG_TIME);
}
}
break;
case LOCKKEY://闭锁键
Fill_Buf_P();//显示P
PassPosi=1;
Sys_Speaker(SHORT_TIME);
break;
}
break;
case 2://开锁状态
if(Key==LOCKKEY)
{//用户按动闭锁按键
Fill_Buf_P();
SysMode=0;
LOCKCON=0;//闭锁
Sys_Speaker(SHORT_TIME);
}
break;
}
}
void Ini_Timer0()
{
TMOD&=0XF0;
TMOD|=0X01;// 初始化T0,模式1
TR0=0;
TH0=(65536-20000)/256;//T0 赋计数初值
TL0=(65536-20000)%256;
TR0=1;//启动T0
ET0=1;//允许T0中断
}
void Timer0() interrupt 1
{
TR0=0;
TH0=(65536-20000)/256; //T0 赋计数初值
TL0=(65536-20000)%256;
TR0=1;
TimerBit=1;//定时时间到
}
void Ini_System()
{
PassPosi=1;
LOCKCON=0;//闭锁
Ini_Timer0();//初始化T0
Fill_Buf_P();
EA=1;//允许系统中断
}
void main()
{
uchar KeyTemp;
Ini_System();
while(1)
{
if (TimerBit==1)
{//定时时间到
Disp_LED();//刷新显示器
Sys_Alarm();//报警处理
KeyTemp=Scan_Key();//扫描按键
Key_Process(KeyTemp);//按键处理
TimerBit=0;
}
}
}

㈥ 单片机拨打固定电话怎么拨

1、首先在单片机系统运行时将所春神拆需瞎猛要拨打的固定电话按下键盘上的对应数字,会显示在液晶屏上。
2、其次电话号码键盘上的DELETE键能实现扒枣退格功能,电话号码键盘上的CLEAR键能实现清屏功能。
3、最后就可以拨打固定电话了。

㈦ 单片机C51编程,怎么退出一个没有返回值的函数

用return
;
如:
void
max(unsigned
char
t)
{
if(t>250)
return
;
//液塌如果大于
250,则退出此函闹纤圆数
while(1);
//否则就会在这
死循环
}
希望我的回答竖键对你有帮助

㈧ 计算机基础知识

t一、计算机的发展与分类
1946年由美国宾夕法尼亚大学研制的世界上第一台可以用程序控制的计算机被称为电子数字积分器与计算器(Electronic Numerical Integrator And Calculator),简称ENIAC。这台计算机的字长为12位,主存储器只有17K,运算速度为每秒5000次加法运算,共使用18800个电子管,1500个继电器,占地面积为150m2,重30t,耗电150kw,造价为100多万美元。今天看来,这台计算机既贵且重,运算速度低,字长不够长,而且耗电多。但它正是今天大小不一、花样繁多的各种类型电子计算机的先驱,为计算机技术的发展奠定了基础。如果该ENIAC称为第一代电子计算机的话,至今已发展至第四代。

第一代(1946一1958年)电子管数字计算机

计算机的逻辑元件采用电子管,主存储器采用磁鼓、磁芯,外存储器已开始采用磁带软件主要用机器语言编制,后期逐步发展了汇编语言。主要用于科学计算。

第二代(1958—1964年)晶体管数字计算机

计算机的逻辑元件采用晶体管,主存储器采用磁芯,外存储器已开始使用磁盘;软件已开始有很大的发展,出现了各种高级语言及编译程序。此时,计算机速度明显提高,耗电下降,寿命提高。计算机已发展至用于各种事务处理,并开始用于工业控制。

第三代(1964一1971年)集成电路计算机

计算机的逻辑元件采用小规模和中规模集成电路,即所谓的SSI和MSI;软件发展更快,已有分时操作系统,应用范围日益扩大。

第四代(1971年以后)大规模和超大规模集成电路计算机

计算机的逻辑元件采用大规模集成电路(LSI),在单片硅片上可集成1000至20000个晶体管的集成电路。而超大规模集成电路目前集成多达5000万个晶体管。
目前计算机技术发展迅速,发展方向主要一是朝着大型、巨型化发展,二是向小型、微型化发展。

1.大型、巨型计算机

为了适应现代科学技术发展的需要,要求计算机提高运算速度,加大主储容量,为此出现了大型和巨型计算机。如美国的克雷公司生产的Cray—1、Cray—2、Cray—3巨型计算机比较着名。我国的银河I就是每秒l0亿次并行巨型计算机。巨型计算机象征着一个国家的科技实力,目前只有少数几个国家有能力生产。大型机速度快,容量大,解决了过去无法计算的实时及复杂的数学问题,但设备庞大,价格昂贵。

2.小型、微型计算机

小型、微型机的出现、普及和银薯应用,适应宇航、导弹技术及一般应用的体积小、造价低、高可靠性要求。

微型计算机(Microcomputer)的心脏——中央处理器(CPU)集成在一小块芯片上,被称为微处理器MPU(Micro processing Unit),以区别大、中、小型计算机的CPU。微型计算机除有MPU外,还有以大规模集成电路制成的主存储器和输入输出接口电路,三者之间采用总线结构联系起来。如果再配上相应的外围设备如显示器(CRT)、键盘及打印机等,这就成为微型计算机系统(Microcomputer System)。目前,微型计算州败机功能已经很强,比如“奔腾4”(Pentium) CPU的集成度已达到4000多万只晶体管,时钟频率高达3000MHz。由于结构简单、通用性强、价格便宜,微型计算机已成为现代计算机领域中的一个极为重要的分支,发展突飞猛进。

二、计算机的用途

我门现正身处科技年代,计算机的应用无所不在。从日常生活接触到的至敏感高科技的,本章可帮助你了解计算机在不同领域的应用情况。

3.1 教育
 计算机作为学习工具
计算机辅助学习就是借助计算机作为学习工具。现时,有不少计算机辅助学习软件均借助文字、图像、声音、影像及动画等方式帮助学生学习不同的科目。同时可测试所学的知识,并立刻得到测试的结果。
互联网上亦可以找到大量的学习资源,学生也可自行学习一些课外的知识。
 计算机作为教学工具
计算机也是很好的教学辅助工具。透过使用计算机,教师能够以更有趣的多媒体(图像、视像、动画、声音和文字)效果,更清楚地展示教学内容、解释一些较难说明的概念及展示一些锋迹者难以实际进行的实验,使学习更有趣味。

 计算机作为学校行政工具
透过计算机的帮助,学校的行政可以更有效率。学校可以利用计算机来贮存和处理大量的数据,例如每个学生的个人纪录、班级名单、各科考试成绩、图书馆的图书数据等。

3.2 娱乐
 计算机游戏
计算机游戏可分为冒险游戏、动作游戏、教育游戏、智力游戏、模拟游戏、战略游戏等,大都含有大量的视觉及音响效果,好的计算机游戏能引发游戏参与者的想象力,并为他们提供了挑战的乐趣和成功的喜悦。
 电影及电视制作
利用计算机,我们可以制作电影或电视节目中的特别音响和视觉效果;现时,不少科幻或动作电影都有利用计算机技术协助制作,为我们带来新形式的娱乐。
互动电视
现在,我们只需接驳一个控制盒,便可安坐家中,享受自选视像服务。你只需选择你喜欢看的影片,计算机系统即会透过电话线把视像传送过来,让你在家中的电视收看。
3.3 家庭电器
 家庭电器
录像机定时录像,洗衣机的洗衣程序,电冰箱、冷气机自动控制温度、微波炉加热程序,很多都由计算机控制了。
 智能家居
所谓智能家居,就是透过编程、声控或电话操控,全屋电器都交由计算机控制,按时开关。

3.4 交通运输
 交通监控
交通灯、电子道路收费、海陆空交通监察系统,都是利用计算机操控的。
 调配
铁路系统、车、船、飞机间的调配,都是利用计算机操控的。
 票务
售票系统如自动售票机、八达通等都是利用计算机操控的。

3.5 通讯
 电话
大部分国家的电话系统已计算机化了,进一步改良了音质、线路、电话机楼之工作环境。
 电子邮件
电子邮件软件可以让人们在计算机网络上收发讯息。它是一种快捷、经济而方便的讯息传递方法。
 实时交流
进行网上游戏、聊天室、ICQ、网络电话、视像会议等。而视像会议更可以让人透过计算机网络与其它人作面对面的通话。
3.6 商业
 金融业
金融机构各分行的运作及纪录,都靠计算机联系, 你可以利用自动柜员机存款、提款或转账,现在你更可以利用电话、电视或计算机,连接银行的计算机系统,从而
1.查询胀户余额;
2.进行转胀;
3.取得财经信息。
 销售业
百货公司及超级市场利用计算机化的销售点终端机,读取货物的数据(名称和价格),打印发票,控制存货,系统并连接各销售点终端机,控制存货水平及订货数量。
 服务业
很多服务业都开始利用计算机改善效率,酒店可利用计算机及互联网预订房间,酒楼用计算机落单及结账,旅行社利用计算机为客户预订机票酒店等,购物公司利用互联网作购物服务等。

3.7 办公室应用
办公室自动化是利用计算机化设备来处理办公室的工作。以下各类应用软件,是一般自动化的办公室内经常使用的:
 文书处理软件
文书处理软件可用作建立、编辑、校对、格式化及打印文件。
 电子表格
电子表格软件可以进行计算、分析数据,以及展示数据。
 数据库
数据库软件可作贮存、整理及更新大量的资料。
 简报软件
简报软件可以在会议中向出席者显示报告或介绍数据。
三、计算机具有以下特点:
快速的运算能力 , 足够高的计算精度 超强的记忆能力
四、计算机系统的基本组成
运算器
中央处理器 控制器
主机 内存储器
硬件 外存储器
外设 输入设备
微型计算机 输出设备
系统 操作系统
系统软件 服务软件
软件 编译或解释系统
信息管理软件
应用软件 辅助设计软件
文字处理软件
图形软件
各种程序包
五、硬件系统的组成及各个部件的主要功能

计算机硬件系统由运算器、控制器、存储器、输入设备和输出设备等五大部件组成

1.运算器

运算器是一个“信息加工厂”。数据的运算和处理工作就是在运算器中进行的。这里的“运算”,不仅是加、减、乘、除等基本算术运算,还包括若干基本逻辑运算。
2.控制器
控制器是整个计算机的指挥中心,它取出程序中的控制信息,经分析后,便按要求发出操作控制信号,使各部分协调一致地工作。
3.存储器
存放程序和数据的地方,并根据命令提供 存储器是计算机中给有关部分使用。
1)存储器的主要技术参数:存储容量、存取速度和位价格(即一个二进制位的价格)。
2)存储器容量:表示计算机存储信息的能力,并以字节(byte)为单位。1个字节为8个二进制位(bit)。由于存储器的容量一般都比较大,尤其是外存储器的容量提高得非常快, 因此又以210 (1024)为倍数不断扩展单位名称。这些单位的关系如下:(千、兆、吉), 因此又以210 (1024)为倍数不断扩展单位名称。这些单位的关系如下:(千
1byte= 8bit lKB= l024byte
lMB=1024KB lGB=1024MB
3)存储器系统的组成:
存储器系统包括主存储器(内存储器)、辅助存储器(外存储器)和高速缓冲存储器(cache)。三者按存取速度、存储容量、位价格的优劣组成层次结构,以提高CPU越来越高的速度要求,并较好地解决三个技术参数的矛盾。它们之间交换数据的层次如图-2。
4)主存储器
存放当前参与运行的程序、数据和中间信息。它与运算器、控制器进行信息交换。
特点:存储容量小、存取速度快、位价格适当。存储信息不能长期保留(断电即丢失
4.输入设备.
最常见的有键盘和鼠标,我们可以通过键盘 {图一}的输入和鼠标 {图二}的操作把一些基本的信息传输到电脑中,还有计算机中的硬盘和软盘,将事先存放在磁盘中的信息通过操作传送到电脑中去;此外还有扫描仪 {图三}、数码照相机 {图四}、数码摄象机 {图五}等,可以把一些拍好的照片和录像传输到计算机中;我们计算机中的耳脉 {图六}也可以作为输入设备,它可以结合计算机中的软件操作把声音传输到计算机中去。输入设备中还有电子触摸屏,在邮局我们可以直接在触摸屏上进行操作,查询到全国各地的邮政编码。
5.输出设备(Output Device)
是人与计算机交互的一种部件,用于数据的输出。它把各种计算结果数据或信息以数字、字符、图像、声音等形式表示出来。常见的有显示器 {图七}、打印机 {图八}、绘图仪、影像输出系统、语音输出系统、磁记录设备等
六、数据存储的基本概念
数据存储是数据流在加工过程中产生的临时文件或加工过程中需要查找的信息。数据以某种格式记录在计算机内部或外部存储介质上。数据存储要命名,这种命名要反映信息特征的组成含义。数据流反映了系统中流动的数据,表现出动态数据的特征;数据存储反映系统中静止的数据,表现出静态数据的特征。
常用的存储介质为磁盘和磁带。数据存储组织方式因存储介质而异。在磁带上数据仅按顺序文件方式存取;在磁盘上则可按使用要求采用顺序存取或直接存取方式。数据存储方式与数据文件组织密切相关,其关键在于建立记录的逻辑与物理顺序间对应关系,确定存储地址,以提高数据存取速度。
(下面有续篇)
七、软件基础知识

操作系统”(Operating System,简称OS)是最重要的系统软件之一,主要用来管理计算机硬件资源,并为我们提供控制与操作计算机的环境。Windows98就是一种典型的操作系统软件,我们是通过桌面、菜单、控制面板等部分来操作和控制我们的计算机的。
常见的操作系统有DOS,Windows3.x,UNIX,Mac OS等。
操作系统是计算机系统的最高统帅,所有软件都要依靠操作系统的指令工作。不论硬件还是软件都离不开操作系统的支持。总的来说,操作系统负担着以下几方面的重要使命:
Ø 管理计算机系统的各种硬件资源,如CPU、内存空间、磁盘空间、输入/输出设备等。
Ø 2管理计算机系统中的各种]软件资源。
Ø 负责协调计算机系统的各硬件之间、软件之间、硬件和软件之间的关系,合理地组织计算机的工作流程。
Ø 作为计算机与使用者之间交换信息的桥梁。当计算机配置了操作系统后,人不再直接操作计算机的硬件,而是利用操作系统提供的命令与服务与计算机的各种软硬件打交道。可以说操作系统建立了使用者与计算机之间的接口与通道。
总之,离开了操作系统的管理和中介作用,计算机对普通人来说是没有任何价值的。DOS、OS/2、UNIX、Windows、Mac OS等都是可以应用于微机上的操作系统,其中DOS和Windows是最常用的微机操作系统。
人、计算机与操作系统三者之间的关系见书。
应用软件是为某种实际应用或解决某种问题所编制的各种应用程序。这些程序具有很强的实用性,可以专门用于解决某个应用领域中的具体问题。如事务管理软件、文字处理软件、辅助教学软件、辅助设计软件、各种游戏软件等等。
另外,应用软件必须依附于某种操作系统。也就是说,一种应用软件通常只能在一种操作系统中运行。
软件使用道德规范:使用合法软件、使用正版软件;不非法复制软件,不使用盗版软件。
3. 计算机病毒及其防治
计算机病毒并不是平常意义上所指的那种生物病毒或细菌病毒,它也是计算机程序。
计算机病毒具有传染性、扩散性、隐蔽性、破坏性。详细介绍及举例见书上。
计算机病毒的预防措施有:
Ø 不使用来历不明、无法确定是否带有病毒的软盘和光盘。
Ø 如果一定要使用外来软盘,应该先利用杀毒软件进行病毒检查,确定不携带病毒后才能使用。
Ø 不非法复制软件,不使用盗版软件。
Ø 对系统盘、程序盘及存有重要数据的软盘进行写保护,并进行备份。
Ø 定期利用杀毒软件对计算机进行杀毒检测,以便及时发现、清除病毒。
计算机病毒的清除常用的杀毒软件有:KILL、KV300、瑞星杀毒软件、Norton等。
清楚病毒最彻底的方法是对已染上病毒的磁盘重新分区及进行格式化操作。格式化磁盘将删除磁盘上所有的程序和数据,包括操作系统,因而作为程序的病毒也将被清除掉。不过,由于硬盘格式化的后果比较严重,而且格式化后安装操作系统有一定的难度,因此大家不要轻易格式化硬盘,要请专业人员来操作。
八、数值在计算机中的表示形式
数值在计算机中表示形式为机器数,计算机只能识别0和1,使用的是二进制,而在日常生活中人们使用的是十进制,"正如亚里士多德早就指出的那样,今天十进制的广泛采用,只不过我们绝大多数人生来具有10个手指头这个解剖学事实的结果.
数值有正负之分,计算机就用一个数的最高位存放符号(0为正,1为负).这就是机器数的原码了.假设机器能处理的位数为8.即字长为1byte,原码能表示数值的范围为
(-127~-0 +0~127)共256个.
有了数值的表示方法就可以对数进行算术运算.但是很快就发现用带符号位的原码进行乘除运算时结果正确,而在加减运算的时候就出现了问题,如下: 假设字长为8bits
( 1 ) 10- ( 1 )10 = ( 1 )10 + ( -1 )10 = ( 0 )10
进行原码运算:(00000001)原 + (10000001)原 = (10000010)原 = ( -2 ) 显然不正确.
因为在两个正数的加法运算中是没有问题的,于是就发现问题出现在带符号位的负数身上。
对除符号位外的其余各位逐位取反就产生了反码(对于正数,其反码与原码相同).反码的取值空间和原码相同且一一对应. 下面是反码的减法运算:
( 1 )10 - ( 1 ) 10= ( 1 ) 10+ ( -1 ) 10= ( 0 )10
进行反码运算:(00000001) 反+ (11111110)反 = (11111111)反 = ( -0 ) 有问题.
( 1 )10 - ( 2)10 = ( 1 )10 + ( -2 )10 = ( -1 )10
进行反码运算:(00000001) 反+ (11111101)反 = (11111110)反 = ( -1 ) 正确
问题出现在(+0)和(-0)上,在人们的计算概念中零是没有正负之分的.(印度人首先将零作为标记并放入运算之中,包含有零号的印度数学和十进制计数对人类文明的贡献极大).
于是就引入了补码概念. 负数的补码就是对反码加一,而正数不变,正数的原码反码补码是一样的.在补码中用(-128)代替了(-0),所以补码的表示范围为:
(-128~0~127)共256个.
注意:(-128)没有相对应的原码和反码, (-128) = (10000000) 补码的加减运算如下:
( 1 ) 10- ( 1 ) 10= ( 1 )10 + ( -1 )10 = ( 0 )10
(00000001)补 + (11111111)补 = (00000000)补 = ( 0 ) 正确
( 1 ) 10- ( 2) 10= ( 1 )10 + ( -2 )10 = ( -1 )10
(00000001) 补+ (11111110) 补= (11111111)补 = ( -1 ) 正确
所以补码的设计目的是:
⑴使符号位能与有效值部分一起参加运算,从而简化运算规则.
⑵使减法运算转换为加法运算,进一步简化计算机中运算器的线路设计
所有这些转换都是在计算机的最底层进行的,而在我们使用的汇编、C等其他高级语言中使用的都是原码。看了上面这些大家应该对原码、反码、补码有了新的认识了吧!
九、常用外部设备
键盘、鼠标、显示器、打印机 、音响、耳机、扫描仪
十、什么是CPU

CPU是英语“Central Processing Unit/中央处理器”的缩写,CPU一般由逻辑运算单元、控制单元和存储单元组成。在逻辑运算和控制单元中包括一些寄存器,这些寄存器用于CPU在处理数据过程中数据的暂时保存, 其实我们在买CPU时,并不需要知道它的构造,只要知道它的性能就可以了。 CPU主要的性能指标有: 主频即CPU的时钟频率(CPU Clock Speed)。这是我们最关心的,我们所说的233、300等就是指它,一般说来,主频越高,CPU的速度就越快,整机的就越高。 时钟频率即CPU的外部时钟频率,由电脑主板提供,以前一般是66MHz,也有主板支持75各83MHz,目前Intel公司最新的芯片组BX以使用100MHz的时钟频率。另外VIA公司的MVP3、MVP4等一些非Intel的芯片组也开始支持100MHz的外频。精英公司的BX主板甚至可以支持133MHz的外频,这对于超频者来是首选的。 内部缓存(L1 Cache):封闭在CPU芯片内部的高速缓存,用于暂时存储CPU运算时的部分指令和数据,存取速度与CPU主频一致,L1缓存的容量单位一般为KB。L1缓存越大,CPU工作时与存取速度较慢的L2缓存和内存间交换数据的次数越少,相对电脑的运算速度可以提高。 外部缓存(L2 Cache):CPU外部的高速缓存,Pentium Pro处理器的L2和CPU运行在相同频率下的,但成本昂贵,所以Pentium II运行在相当于CPU频率一半下的,容量为512K。为降低成本Inter公司生产了一种不带L2的CPU命为赛扬,性能也不错,是超频的理想。 MMX技术是“多媒体扩展指令集”的缩写。MMX是Intel公司在1996年为增强Pentium CPU在音像、图形和通信应用方面而采取的新技术。为CPU增加57条MMX指令,除了指令集中增加MMX指令外,还将CPU芯片内的L1缓存由原来的16KB增加到32KB(16K指命+16K数据),因此MMX CPU比普通CPU在运行含有MMX指令的程序时,处理多媒体的能力上提高了60%左右。目前CPU基本都具备MMX技术,除P55C和Pentium ⅡCPU还有K6、K6 3D、MII等。 制造工艺:现在CPU的制造工艺是0.35微米,最新的PII可以达到0.28微米,在将来的CPU制造工艺可以达到0.18微米。
十一、内存的概念
在计算机的组成结构中,有一个很重要的部分,就是存储器。存储器是用来存储程序和数据的部件,对于计算机来说,有了存储器,才有记忆功能,才能保证正常工作。存储器的种类很多,按其用途可分为主存储器和辅助存储器,主存储器又称内存储器(简称内存,港台称之为记忆体)。
内存就是存储程序以及数据的地方,比如当我们在使用WPS处理文稿时,当你在键盘上敲入字符时,它就被存入内存中,当你选择存盘时,内存中的数据才会被存入硬(磁)盘。在进一步理解它之前,还应认识一下它的物理概念。
内存一般采用半导体存储单元,包括随机存储器(RAM),只读存储器(ROM),以及高速缓存(CACHE)。
●只读存储器(ROM)
ROM表示只读存储器(Read Only Memory),在制造ROM的时候,信息(数据或程序)就被存入并永久保存。这些信息只能读出,一般不能写入,即使机器掉电,这些数据也不会丢失。ROM一般用于存放计算机的基本程序和数据,如BIOS ROM。其物理外形一般是双列直插式(DIP)的集成块。
●随机存储器(RAM)

随机存储器(Random Access Memory)表示既可以从中读取数据,也可以写入数据。当机器电源关闭时,存于其中的数据就会丢失。我们通常购买或升级的内存条就是用作电脑的内存,内存条(SIMM)就是将RAM集成块集中在一起的一小块电路板,它插在计算机中的内存插槽上,以减少RAM集成块占用的空间。目前市场上常见的内存条有1G/条,2G/条,4G/条等。
●高速缓冲存储器(Cache)

Cache也是我们经常遇到的概念,也就是平常看到的一级缓存(L1 Cache)、二级缓存(L2 Cache)、三级缓存(L3 Cache)这些数据,它位于CPU与内存之间,是一个读写速度比内存更快的存储器。当CPU向内存中写入或读出数据时,这个数据也被存储进高速缓冲存储器中。当CPU再次需要这些数据时,CPU就从高速缓冲存储器读取数据,而不是访问较慢的内存,当然,如需要的数据在Cache中没有,CPU会再去读取内存中的数据。
●物理存储器和地址空间
物理存储器和存储地址空间是两个不同的概念。但是由于这两者有十分密切的关系,而且两者都用B、KB、MB、GB来度量其容量大小,因此容易产生认识上的混淆。初学者弄清这两个不同的概念,有助于进一步认识内存储器和用好内存储器。
物理存储器是指实际存在的具体存储器芯片。如主板上装插的内存条和装载有系统的BIOS的ROM芯片,显示卡上的显示RAM芯片和装载显示BIOS的ROM芯片,以及各种适配卡上的RAM芯片和ROM芯片都是物理存储器。
存储地址空间是指对存储器编码(编码地址)的范围。所谓编码就是对每一个物理存储单元(一个字节)分配一个号码,通常叫作“编址”。分配一个号码给一个存储单元的目的是为了便于找到它,完成数据的读写,这就是所谓的“寻址”(所以,有人也把地址空间称为寻址空间)。
地址空间的大小和物理存储器的大小并不一定相等。举个例子来说明这个问题:某层楼共有17个房间,其编号为801~817。这17个房间是物理的,而其地址空间采用了三位编码,其范围是800~899共100个地址,可见地址空间是大于实际房间数量的。
对于386以上档次的微机,其地址总线为32位,因此地址空间可达2的32次方,即4GB。(但是我们常见的32位操作系统windows xp却最多只能识别或者使用3.25G的内存,即使64位的操作系统vista虽然能识别4G的内存,却也最多只能使用3.25G的内存。)
好了,现在可以解释为什么会产生诸如:常规内存、保留内存、上位内存、高端内存、扩充内存和扩展内存等不同内存类型。
十二、微处理器的概念
微处理器(MPU),说白了,就是微型化的CPU。也就是利用超大规模集成电路技术把CPU做到一片或几片芯片里。
十三、计算机安全常识

什么是恶意软件?

答:恶意软件是对破坏系统正常运行的软件的统称,一般来说有如下表现形式:

强行安装,无法卸载

安装以后修改主页且锁定

安装以后随时自动弹出广告

自我复制代码,类似病毒一样,拖慢系统速度

什么是插件?

答:插件是指会随着IE浏览器的启动自动执行的程序,根据插件在浏览器中的加载位置,可以分为工具条(Toolbar)、浏览器辅助(BHO)、搜索挂接(URL SEARCHHOOK)、下载ActiveX(ACTIVEX)。

有些插件程序能够帮助用户更方便浏览因特网或调用上网辅助功能,也有部分程序被人称为广告软件(Adware)或间谍软件(Spyware)。此类恶意插件程序监视用户的上网行为,并把所记录的数据报告给插件程序的创建者,以达到投放广告,盗取游戏或银行帐号密码等非法目的。

因为插件程序由不同的发行商发行,其技术水平也良莠不齐,插件程序很可能与其它运行中的程序发生冲突,从而导致诸如各种页面错误,运行时间错误等等现象,阻塞了正常浏览。

什么是木马?

答:特洛伊木马,英文叫做“Trojan horse”,其名称取自希腊神话的特洛伊木马记。 它是一种基于远程控制的黑客工具,具有隐蔽性和非授权性的特点。所谓隐蔽性是指木马的设计者为了防止木马被发现,会采用多种手段隐藏木马,这样服务端即使发现感染了木马,由于不能确定其具体位置,往往只能望“马”兴叹。所谓非授权性是指一旦控制端与服务端连接后,控制端将享有服务端的大部分操作权限,包括修改文件,修改注册表,控制鼠标,键盘等等,而这些权力并不是服务端赋予的,而是通过木马程序窃取的。

木马有哪些危害:

1.发送QQ、msn尾巴,骗取更多人访问恶意网站,下载木马

2.盗取用户帐号,通过盗取的帐号和密码达到非法获取虚拟财产和转移网上资金的目的

3.监控用户行为,获取用户重要资料

如何预防木马?

1.养成良好的上网习惯,不访问不良小网站。

2.下载软件尽量到大的下载站点或者软件官方网站下载。

3.安装杀毒软件,防火墙,定期进行病毒和木马扫描。

㈨ 基于51单片机的密码锁

基于51单片机的密码锁的话其实我是不知道是什么意思的 所以说不好意思咯(๑ó﹏ò๑)

㈩ 单片机c51的中断是怎么进入和退出的

只要在函数段绝名后加上interrupt (0~4) using(0~3)即可,其它和C语言的函数设计一样,而其中interrupt后的0~4分别对应的是外部中断握键姿0、定时器亮耐0、外部中断1、定时器1、串口中断,using后面的0~3分别对应工作寄存器组0~3。

阅读全文

与单片机怎么退格相关的资料

热点内容
pdf里面怎么去水印 浏览:845
appleid账号加密码 浏览:220
苹果如何下载微仓app 浏览:916
迅雷解压进度为0 浏览:859
解压解惑近义词 浏览:316
压缩比不一样燃烧室不一样 浏览:101
androidbutton左对齐 浏览:172
怎么找到学校的服务器 浏览:368
android状态栏高度是多少 浏览:987
linuxcliphp 浏览:515
萝卜源码如何关闭用户注册验证 浏览:756
苹果手机头条app怎么没有tv 浏览:563
电脑qq文件夹怎么发不出去 浏览:614
解压小游戏测试钻石剑的硬度 浏览:962
java结束函数 浏览:622
打开远程桌面的命令 浏览:836
树莓派如何搭建mqtt服务器 浏览:588
怎么加密w8文件 浏览:609
linuxprogram 浏览:708
php接口编程思想 浏览:92