本文目录一览

1,stc12c5a60s2单片机 延时函数怎么写 晶振110592Mhz 和

软件延时并不知精确,我都是用一个叫dpjxjl的小软件道自动生成,具体准确否,没版校验过,以1MS例:STC的1T单片机12MHz:void delay(void) //误差权 0us unsigned char a,b; for(b=129;b>0;b--) for(a=45;a>0;a--);}1T单片机11.0592MHz:void delay(void) //误差 -0.018084490741us unsigned char a,b,c; for(c=8;c>0;c--) for(b=197;b>0;b--) for(a=2;a>0;a--);}
最好用CTC
用定时中断多好,精确。非要用死等的延时函数,下面给个接近使用12M晶振的://这类型的单片机是单时钟指令,所以延时的数值比较大void delay_ms(unsigned int ms)//毫秒延时 可以到65536ms unsigned int i; unsigned int x; for(i=0;i<ms;i++) x=1020; do } }

stc12c5a60s2单片机 延时函数怎么写 晶振110592Mhz 和

2,stm32 ostimedlyhmsm晶振怎么设置

1、你调用OSTimeDly或者OSTimeDlyHMSM,意味着该任务CPU使用权会被没收,然而你开启一个定时器之后,该任务还可以使用CPU。2、举例子:如下情景,可以使用软件定时器作超时处理,设备A管理设备B、C、E,设备A向设备BCE设备发送某一消息,如果在T时间内,设备BCE没有回应,设备A将重起并初始化BCE;那么可以在一个任务中,依次向BCE发送消息,并且启动软件动定时器TMRa,TMRb,TMRc,定时器时间到时调用各自的重起并初始化函数;另一方面,如果接收到BCE的消息则停止定时器TMRa,TMRb,TMRc。3、然而如果用OSTimeDly或者OSTimeDlyHMSM处理上面的场景,可能要多开几个任务管理BCE并增加信号量通知OSTimeDly或者OSTimeDlyHMSM之后,到底是“重起并初始化BCE”还是什么都不做。4、软件定时器和延时都是基于“系统的节拍”来计时/定时的,虽然软件定时器是在一个高优先级的任务中管理,这个任务也是由“系统节拍中断“中向其发送信号量,因此还是基于“系统的节拍”。5、没必要去对它们的区别做出一个定义,关键还是去理解它们的应用场合,它们都能解决什么问题。
1. stm32f103有内部晶振。刚刚上电时,所有clock都是源于内部晶振,所以当片内没有程序或内部程序没有使能外部晶振时,外部晶振是不会起振的。2. stm32f103有内部复位电路,只有当检测到外部电压大于电压阀值时才会启动。因为需要检测外部电压,所以模拟ref/vdda/vssa不能开路,做实验是可以将ref/vdda与3.3v链接,vssa与gnd链接。3. 串口连接时,要记得正确配置好boot0和boot1引脚的电平。4. jlink链接时,要注意是jtag模式还是swd模式。(一般5个脚的,包含3.3v和gnd的是swd模式;引脚多的是jtag模式。怀疑问题很可能出在第二点。

stm32 ostimedlyhmsm晶振怎么设置

3,怎么买网卡

买D-link的
随便什么样的都可以,目前网卡的价格是15~50元不等。参考一下:http://detail.zol.com.cn/price_search.php?subcatid=42&ref0=http://www.baidu.com/s?tn=sitehao123&ie=gb2312&bs=%D4%F5%D1%F9%B0%B2%D7%B0%B5%E7%C4%D4%B5%C4%B2%D9%D7%F7%CF%B5%CD%B3&sr=&z=&cl=3&f=8&wd=%CD%F8%BF%A8&ct=0
怎么选择网卡?专业技术人员告诉您选购网卡要“七看”。 一、看材料 优质的网卡均采用喷锡板,而劣质的网卡一般采用非喷锡板材,又叫画金板,即直接进行清洗的铜板。采用画金板会极大地影响焊接的质量,造成虚焊、脱焊等,影响网卡的使用。用户可以通过肉眼识别网卡材料的真伪:喷锡板的裸露部分为白色,而画金板的裸露部分为黄色。 二、看工艺 良好的焊接质量可以保证数据的稳定传输。优质网卡的电路板焊点大小均匀,焊脚干净;劣质网卡的焊点不均匀,有时可以看到细小的气眼,出现堆焊或者虚焊现象。 三、看电路板上的布线 优质网卡应该遵循信号线和地之间回路面积最小的原则,以减少信号之间的串扰。信号线转弯处应按工业标准走45°角,节点处应为圆弧形设计。劣质网卡多数走线凌乱,不按工业标准设计,这样容易造成信号传输波动较大,影响系统的稳定和造成pc机工作频率的波动,严重的会损坏pc机。 四、看晶振的选材 优质网卡应选用优质的晶振来保证高精度的时钟频率,并且在线路的设计上应使晶振尽可能接近主芯片,以缩短信号线的长度,增加传输的稳定性。而劣质的网卡常常省掉晶振或者使用劣质晶振,从而使数据传输速度减慢或者造成数据丢失。 五、看网卡电路元件的选择 优质的网卡除了电解电容和高压瓷片电容以外,其他的阻容器件都应选择smt贴片元件,因为贴片元件比插件的可靠性高出许多,并且可以减小电路体积,增强散热的效果。由于贴片元件在焊接工艺上采用贴片机波峰焊接,使焊点的质量有了可靠的保证。 六、看金手指的工艺 金手指是指网卡和主板的接触部分,优质网卡应选择镀钛金工艺。 七、看挡板 优质网卡应选用强度和光泽比较好的金属挡板,既可防止用力导致的电路板变形扭曲,又可保证和机箱上的安装孔尺寸配合精确,方便用户安装。
随便什么样的都行

怎么买网卡

4,电脑南北桥的问题

这个用要用专门的诊断卡,一般电脑城都有卖的,PCI接口下面是诊断卡的使用和判断思路 A、CPU座接触不良导致的 B、主板超频 C、BIOS程序不对 D、I/O芯片损坏 E、南桥芯片损坏 F、CPU的控制总线出错,进行打阻值,有无短路或者开路。 G、北桥芯片坏 C1或者D3代码的检修 A、BIOS程序不对,BIOS座接触是否良好 B、内存槽有无机械损坏或者氧化 C、内存供电是否正常 D、内存槽与北桥之间的线路 E、I/O芯片损坏 F、南北桥虚焊,用手压,同时RESET,有时候可能判断出 G、北桥芯片坏 H、南桥芯片坏 I、CPU旁边排阻是否损坏 J、PCB有断线 C1到C3或C5循环跳变 A、BIOS程序不对 B、串口芯片损坏 C、I/O芯片损坏 D、南北桥芯片损坏 E、32.768晶振起振是否正常 B0代码 A、测内存的数据负载电压 B、清CMOS C、测北桥供电是否正常 D、北桥坏 E、北桥虚焊 25代码 A、测试AGP核心供电 B、北桥供电 C、刷BIOS D、北桥坏 走OD后不亮 A、测试PCI插槽之间的电阻和排阻 B、外频、倍频跳线 0B、31代码 A、BIOS程序不对 B、I/O芯片损坏 C、南北桥损坏 D、主板是否与显卡兼容 E、查北桥供电 F、PCB断线、板上是否沾有导电物 G、显卡插槽损坏 2D代码 A、测试AGP的AD线 B、初始化IMTR信号 C、北桥供电不正常或者北桥损坏 显示2B代码后不亮 A、刷新BIOS B、时钟发生器不良 C、清楚CMOS D、北桥供电不正常或损坏 显示50代码 A、I/O损坏或者I/O坏 B、南桥供电不正常或者南桥坏 C、BIOS程序坏 D、北桥坏 显示41代码 A、BIOS程序损坏 刷新BIOS B、PCB断线 C、CPU损坏 D、内存条质量不佳 E、北桥接触不良 BF、02代码 A、清楚CMOS设置。 B、主板CMOS电路有问题。 6. 主板歇性故障检修思路。 (1) 主板上灰尘大多。 (2) CMOS电池电压不足。 (3) 南,北桥,CPU座虚焊。 (4) 主板供电或者供电滤波不良 (5) 晶体不良或其谐振电容不良。 (6) 电容鼓包或者电容不良。 (7) 电源IC坏。 (8) I/O坏。 (9) 南桥坏。
不值的去修南北桥,换新的吧
换南北桥还不如换快别的二手板子,又便宜,修的话一个芯片就要100多块,都换的话你说还有意义么 ??
换南北桥可以的,买二手也没有保障,还是修修原来的主板吧
最好不要这样换,系统容易产生问题,最好是更换主板。
换完南北桥后主板不是很稳定
换块新的主板吧,修没有多大价值,而且没多大意义。我感觉技嘉945比七彩虹945的好。

5,如何测试33VSB

就是PCI A14脚的电压,电源的紫色线一般是通过1117达到A14脚,但是有些是通过其他芯片的,楼主可以顺着A14脚查,
一、通过测pci槽、agp槽对地打阻值可判定南北桥有无损坏1、pci槽中所有的ad复合线对地打阻值都为300~800之间数值,说明南桥好;若由无穷大,说明南桥虚焊;若有3根或3根以上导通,说明南桥坏;2、agp槽对地所有ad复合线对地打阻值都为300~800之间数值,说明北桥好;若由无穷大,说明北桥虚焊;若有3根或3根以上导通,说明北桥坏;3、内存槽,通过对数据线进行打阻值判断,都为300~800之间数值,说明北桥好;若由无穷大,说明北桥虚焊;若有3根或3根以上导通,说明北桥坏。二、对主供电部分输出电感一端或q1场管的s极、q2场管的d极打阻值,在不插cpu或假负载的情况下,即判断北桥好坏1、在40左右数值为正常2、在20~30左右为北桥有轻微损坏3、在10以下说明北桥损坏三、对于ide口、usb口打阻值来判断南桥是否有损坏1、ide口,打2~9针、11~19针、21~29针、37~39针,对地阻值有600左右且相差不大的数值为南桥正常;有无穷大或1000以上的数值为南桥虚焊或ide口到nq之间的小电阻烧断;如阻值明显偏小为南桥损坏2、usb口,打两个usb口的2、3针共4根针的阻值,如有500左右的数值说明南桥正常;如有无穷大说明南桥虚焊或它们到南桥之间的小电阻损坏;如有阻值明显偏小说明南桥损坏主板诊断卡代码 代码:ff、00、c0、d0、cf、f1或什么也没有表示cpu没通过 c1、c6、c3、d3、d4、d6、d8、b0、a7、e1表示内存不过 24、25、26、01、0a、0b、2a、2b、31表示显卡不过 某些集成显卡主板23、24、25表示可以正常点亮,某些via芯片组显示13则表示可以点亮,某些品牌机里的主板显示0b则表示正常,某些主板显示4e表示正常点亮,某些intel芯片组的主板显示26或16则表示可以正常点亮。 c1、c6、c3、01、02这个组合循环跳变大部分是i/0坏或刷bios 如显示05、ed、41则直接刷bios
主板全部电压正常后测试点: 时钟:1:时钟芯片两侧的电感是否有电压,14.318晶振是否起振,(两脚电压压差) 2: PCI槽B16脚1.6V电压复位关键测试点: 1 : P CI槽A15脚3.3V电压 2:IDE槽第一脚5V电压 3:BIOS芯片倒数第二脚3.3V 4:CPU假负载PG信号2.5V电压 5:短接复位排针,同时测PG信号测试点是否有高到底电压跳变电压时钟复位全部正常后测试点: 1:上CPU假负载测AD线对地值 2:南北桥总线对地值 3:PCI总线对地值 4:涮BIOS 1.打PCI A14的阻值,对地小于80欧为南桥坏。2.待机时,南桥烫手,为桥坏。(排除AGP供电管损坏。)3.南桥周围的滤波电容对地短路,为桥坏。4.USB中间两根数据线的对地阻值,正常为600左右,如对地为0,为桥坏。5.CMOS跳线中间脚对地短路。为桥坏。6.1117中间脚有3.3VSB。无电压,为桥坏。(排除集成网卡和I/O)7.1117中间脚对地短路,为桥坏。
电源的紫色线一般是通过1117达到A14脚,但是有些是通过其他芯片的,可以顺着A14脚查。触发故障:1: ATX第9脚5VSB,PCI槽A14脚3.3VSB,3,3VSB 一般由1117或1084MOS管转换 ;2:CMOS跳帽2.5V以上电压 ;3:触发排针2.5V以上电压,;4:南桥晶振32.768是否起振(有压差) ;5:查IO 6:查南桥触发后主板必须有的电压(775主板为例) :① 待机3.3VSB 2:VDDQ/AGP倒数第三脚(inter芯片组南北桥供电1.5V) (SIS芯片组1.85V) (nvidia芯片组1.5V) (VIA芯片组2.5V) 注:只有inter芯片组VDDQ电压同时供给南北桥,其他芯片组 VDDQ只给北桥。;② 内存供电(VCC-DDR)DDR2.5V-7脚 DDR2-184脚 ;③ VTT-1.2V(前端总线上拉电压1.2V);④ vcore(CPU供电电压 )478主板为0.9V-1.9V, 775主板为1.0V-1.5V,AMD主板一般 为1.2V-1.5V。
触发故障1: ATX第9脚5VSB,PCI槽A14脚3.3VSB,3,3VSB 一般由1117或1084MOS管转换 2:CMOS跳帽2.5V以上电压 3:触发排针2.5V以上电压, 4:南桥晶振32.768是否起振(有压差) 5:查IO 6:查南桥触发后主板必须有的电压(775主板为例) 1:待机3.3VSB 2:VDDQ/AGP倒数第三脚(inter芯片组南北桥供电1.5V) (SIS芯片组1.85V) (nvidia芯片组1.5V) (VIA芯片组2.5V) 注:只有inter芯片组VDDQ电压同时供给南北桥,其他芯片组 VDDQ只给北桥。 3:内存供电(VCC-DDR)DDR2.5V-7脚 DDR2-184脚 4:VTT-1.2V(前端总线上拉电压1.2V) 5:vcore(CPU供电电压 )478主板为0.9V-1.9V, 775主板为1.0V-1.5V,AMD主板一般 为1.2V-1.5V

6,温度采集与显示

/******************************************************** * DS18B20温度传感器 * * C51 * * yajou 2008-06-28 无CRC * ********************************************************/ #include "reg51.h" #include "intrins.h" #include "DS18B20.h" /******************************************************** * us延时程序 * ********************************************************/ void Delayus(uchar us) { while(us--); //12M,一次6us,加进入退出14us(8M晶振,一次9us) } /******************************************************** * DS18B20初始化 * ********************************************************/ bit Ds18b20_Init(void) //存在返0,否则返1 { bit temp = 1; uchar outtime = ReDetectTime; //超时时间 while(outtime-- && temp) { Delayus(10); //(250)1514us时间可以减小吗 ReleaseDQ(); Delay2us(); PullDownDQ(); Delayus(100); //614us(480-960) ReleaseDQ(); Delayus(10); //73us(>60) temp = dq; Delayus(70); //us } return temp; } /******************************************************** * 写bit2DS18B20 * ********************************************************/ void Ds18b20_WriteBit(bit bitdata) { if(bitdata) { PullDownDQ(); Delay2us(); //2us(>1us) ReleaseDQ(); //(上述1-15) Delayus(12); //86us(45- x,总时间>60) }else { PullDownDQ(); Delayus(12); //86us(60-120) } ReleaseDQ(); Delay2us(); //2us(>1us) } /******************************************************** * 写Byte DS18B20 * ********************************************************/ void Ds18b20_WriteByte(uchar chrdata) { uchar ii; for(ii = 0; ii < 8; ii++) { Ds18b20_WriteBit(chrdata & 0x01); chrdata >>= 1; } } /******************************************************** * 写 DS18B20 * ********************************************************/ //void Ds18b20_Write(uchar *p_readdata, uchar bytes) //{ // while(bytes--) // { // Ds18b20_WriteByte(*p_readdata); // p_readdata++; // } //} /******************************************************** * 读bit From DS18B20 * ********************************************************/ bit Ds18b20_ReadBit(void) { bit bitdata; PullDownDQ(); Delay2us(); //2us( >1us) ReleaseDQ(); Delay8us(); //8us( <15us) bitdata = dq; Delayus(7); //86us(上述总时间要>60us) return bitdata; } /******************************************************** * 读Byte DS18B20 * ********************************************************/ uchar Ds18b20_ReadByte(void) { uchar ii,chardata; for(ii = 0; ii < 8; ii++) { chardata >>= 1; if(Ds18b20_ReadBit()) chardata |= 0x80; } return chardata; } /******************************************************** * 读 DS18B20 ROM * ********************************************************/ bit Ds18b20_ReadRom(uchar *p_readdata) //成功返0,失败返1 { uchar ii = 8; if(Ds18b20_Init()) return 1; Ds18b20_WriteByte(ReadROM); while(ii--) { *p_readdata = Ds18b20_ReadByte(); p_readdata++; } return 0; } /******************************************************** * 读 DS18B20 EE * ********************************************************/ bit Ds18b20_ReadEE(uchar *p_readdata) //成功返0,失败返1 { uchar ii = 2; if(Ds18b20_Init()) return 1; Ds18b20_WriteByte(SkipROM); Ds18b20_WriteByte(ReadScr); while(ii--) { *p_readdata = Ds18b20_ReadByte(); p_readdata++; } return 0; } /******************************************************** * 温度采集计算 * ********************************************************/ bit TempCal(float *p_wendu) //成功返0,失败返1 (温度范围-55 --- +128) { uchar temp[9],ii; uint tmp; float tmpwendu; TR1 = 0; TR0 = 0; //读暂存器和CRC值----------------------- if(Ds18b20_ReadEE(temp)) { TR1 = 1; TR0 = 1; return 1; } //------------------------------------- //CRC校验------------------------------ // //此处应加入CRC校验等 // // //------------------------------------- //使温度值写入相应的wendu[i]数组中----- for(ii = i; ii > 0; ii--) { p_wendu++; } i++; if(i > 4) i = 0; //------------------------------------- //温度正负数处理----------------------- // //------------------------------------- //温度计算----------------------------- tmp = temp[1]; // tmp <<= 8; // tmp |= temp[0]; //组成温度的两字节合并 tmpwendu = tmp; *p_wendu = tmpwendu / 16; //------------------------------------- //开始温度转换------------------------- if(Ds18b20_Init()) { TR1 = 1; TR0 = 1; return 1; } Ds18b20_WriteByte(SkipROM); Ds18b20_WriteByte(Convert); ReleaseDQ(); //寄生电源时要拉高DQ //------------------------------------ TR1 = 1; TR0 = 1; return 0; } //////////DS18B20.h///////////////////////// /******************************************************** * I/O口定义 * ********************************************************/ sbit dq = P1^3; sbit dv = P1^4; //DS18B20强上拉电源 /******************************************************** * 命令字定义 * ********************************************************/ #define uchar unsigned char #define uint unsigned int #define ReleaseDQ() dq = 1; //上拉/释放总线 #define PullDownDQ() dq = 0; //下拉总线 #define Delay2us() _nop_();_nop_(); //延时2us,每nop 1us #define Delay8us() _nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_(); //设置重复检测次次数,超出次数则超时 #define ReDetectTime 20 //ds18b20命令 #define SkipROM 0xCC #define MatchROM 0x55 #define ReadROM 0x33 #define SearchROM 0xF0 #define AlarmSearch 0xEC #define Convert 0x44 #define WriteScr 0x4E #define ReadScr 0xBE #define CopyScr 0x48 #define RecallEE 0xB8 #define ReadPower 0xB4 /******************************************************** * 函数 * ********************************************************/ void Delayus(uchar us); //void Dog(void); bit Ds18b20_Init(void); //DS18B20初始化,存在返0,否则返1 void Ds18b20_WriteBit(bit bitdata); //写bit2DS18B20 void Ds18b20_WriteByte(uchar chrdata); //写Byte DS18B20 void Ds18b20_Write(uchar *p_readdata, uchar bytes); //写 DS18B20 bit Ds18b20_ReadBit(void); //读bit From DS18B20 uchar Ds18b20_ReadByte(void); //读Byte DS18B20 bit Ds18b20_ReadRom(uchar *p_readdata); //读 DS18B20 ROM:成功返0,失败返1 bit Ds18b20_ReadEE(uchar *p_readdata); //读 DS18B20 EE :成功返0,失败返1 bit TempCal(float *p_wendu); //成功返0,失败返1 (温度范围-55 --- +128)

7,电脑是怎么工作的

对于你这个问题我只有复制了,这个问题好强大、简要说明就是打开电源他就工作了。 计算机的基本原理 计算机的基本原理是存贮程序和程序控制。预先要把指挥计算机如何进行操作的指令序列(称为程序)和原始数据通过输入设备输送到计算机内存贮器中。每一条指令中明确规定了计算机从哪个地址取数,进行什么操作,然后送到什么地址去等步骤。 计算机在运行时,先从内存中取出第一条指令,通过控制器的译码,按指令的要求,从存贮器中取出数据进行指定的运算和逻辑操作等加工,然后再按地址把结果送到内存中去。接下来,再取出第二条指令,在控制器的指挥下完成规定操作。依此进行下去,直至遇到停止指令。 程序与数据一样存贮,按程序编排的顺序,一步一步地取出指令,自动地完成指令规定的操作是计算机最基本的工作原理。这一原理最初是由美籍匈牙利数学家冯.诺依曼于1945年提出来的,故称为冯.诺依曼原理。 **计算机的存储程序工作原理和硬件系统 冯·诺依曼结构 计算机系统由硬件系统和软件系统两大部分组成。美藉匈牙利科学家冯·诺依曼结构(John von Neumann)奠定了现代计算机的基本结构,其特点是: 1)使用单一的处理部件来完成计算、存储以及通信的工作。 2)存储单元是定长的线性组织。 3)存储空间的单元是直接寻址的。 4)使用低级机器语言,指令通过操作码来完成简单的操作。 5)对计算进行集中的顺序控制。 6)计算机硬件系统由运算器、存储器、控制器、输入设备、输出设备五大部件组成并规定了它们的基本功能。 7)彩二进制形式表示数据和指令。 8)在执行程序和处理数据时必须将程序和数据道德从外存储器装入主存储器中,然后才能使计算机在工作时能够自动调整地从存储器中取出指令并加以执行。 这就是存储程序概念的基本原理。 计算机指令 计算机根据人们预定的安排,自动地进行数据的快速计算和加工处理。人们预定的安排是通过一连串指令(操作者的命令)来表达的,这个指令序列就称为程序。一个指令规定计算机执行一个基本操作。一个程序规定计算机完成一个完整的任务。一种计算机所能识别的一组不同指令的*,管为该种计算机的指令*或指令系统。在微机的指令系统中,主要使用了单地址和二地址指令。其中,第1个字节是操作码,规定计算机要执行的基本操作,第2个字节是操作数。计算机指令包括以下类型:数据处理指令(加、减、乘、除等)、数据传送指令、程序控制指令、状态管理指令。整个内存被分成若干个存储单元,每个存储单元一般可存放8位二进制数(字节编址)。每个在位单元可以存放数据或程序代码。为了能有效地存取该单元内存储的内容,每个单元都给出了一个唯一的编号来标识,即地址。 计算机的工作原理 按照冯·诺依曼存储程序的原理,计算机在执行程序时须先将要执行的相关程序和数据放入内存储器中,在执行程序时CPU根据当前程序指针寄存器的内容取出指令并执行指令,然后再取出下一条指令并执行,如此循环下去直到程序结束指令时才停止执行。其工作过程就是不断地取指令和执行指令的过程,最后将计算的结果放入指令指定的存储器地址中。计算机工作过程中所要涉及的计算机硬件部件有内存储器、指令寄存器、指令译码器、计算器、控制器、运算器和输入/输出设备等,在以后的内容中将会着重介绍。 (一)计算机硬件系统 硬件通常是指构成计算机的设备实体。一台计算机的硬件系统应由五个基本部分组成:运算器、控制器、存储器、输入和输出设备。这五大部分通过系统总线完成指令所传达的操作,当计算机在接受指令后,由控制器指挥,将数据众输入设备传送到存储器存放,再由控制器将需要参加运算的数据传送到运算器,由运算器进行处理,处理后的结果由输出设备输出。 中央处理器 CPU(central processing unit)意为中央处理单元,又称中央处理器。CPU由控制器、运算器和寄存器组成,通常集中在一块芯片上,是计算机系统的核心设备。计算机以CPU为中心,输入和输出设备与存储器之间的数据传输和处理都通过CPU来控制执行。微型计算机的中央处理器又称为微处理器。 控制器 控制器是对输入的指令进行分析,并统一控制计算机的各个部件完成一定任务的部件。它一般由指令寄存器、状态寄存器、指令译码器、时序电路和控制电路组成。计算机的工作方式是执行程序,程序就是为完成某一任务所编制的特定指令序列,各种指令操作按一定的时间关系有序安排,控制器产生各种最基本的不可再分的微操作的命令信号,即微命令,以指挥整个计算机有条不紊地工作。当计算机执行程序时,控制器首先从指令指针寄存器中取得指令的地址,并将下一条指令的地址存入指令寄存器中,然后从存储器中取出指令,由指令译码器对指令进行译码后产生控制信号,用以驱动相应的硬件完成指纹操作。简言之,控制器就是协调指挥计算机各部件工作的元件,它的基本任务就是根据种类指纹的需要综合有关的逻辑条件与时间条件产生相应的微命令。 运算器 运算器又称积极态度逻辑单元ALU(Arithmetic Logic Unit)。运算器的主要任务是执行各种算术运算和逻辑运算。算术运算是指各种数值运算,比如:加、减、乘、除等。逻辑运算是进行逻辑判断的非数值运算,比如:与、或、非、比较、移位等。计算机所完成的全部运算都是在运算器中进行的,根据指令规定的寻址方式,运算器从存储或寄存器中取得操作数,进行计算后,送回到指令所指定的寄存器中。运算器的核心部件是加法器和若干个寄存器,加法器用于运算,寄存器用于存储参加运算的各种数据以及运算后的结果。 (二)存储器 存储器分为内存储器(简称内存或主存)、外存储器(简称外存或辅存)。外存储器一般也可作为输入/输出设备。计算机把要执行的程序和数据存入内存中,内存一般由半导体器构成。半导体存储器可分为三大类:随机存储器、只读存储器、特殊存储器。 RAM RAM是随机存取存储器(Random Access Memory),其特点是可以读写,存取任一单元所需的时间相同,通电是存储器内的内容可以保持,断电后,存储的内容立即消失。RAM可分为动态(Dynamic RAM)和静态(Static RAM)两大类。所谓动态随机存储器DRAM是用MOS电路和电容来作存储元件的。由于电容会放电,所以需要定时充电以维持存储内容的正确,例如互隔2ms刷新一次,因此称这为动态存储器。所谓静态随机存储器SRAM是用双极型电路或MOS电路的触发器来作存储元件的,它没有电容放电造成的刷新问题。只要有电源正常供电,触发器就能稳定地存储数据。DRAM的特点是集成密度高,主要用于大容量存储器。SRAM的特点是存取速度快,主要用于调整缓冲存储器。 ROM ROM是只读存储器(Read Only Memory),它只能读出原有的内容,不能由用户再写入新内容。原来存储的内容是由厂家一次性写放的,并永久保存下来。ROM可分为可编程(Programmable)ROM、可擦除可编程(Erasable Programmable)ROM、电擦除可编程(Electrically Erasable Programmable)ROM。如,EPROM存储的内容可以通过紫外光照射来擦除,这使它的内可以反复更改。 特殊固态存储器 包括电荷耦合存储器、磁泡存储器、电子束存储器等,它们多用于特殊领域内的信息存储。 此外,描述内、外存储容量的常用单位有: ①位/比特(bit):这是内存中最小的单位,二进制数序列中的一个0或一个1就是一比比特,在电脑中,一个比特对应着一个晶体管。 ②字节(B、Byte):是计算机中最常用、最基本的存在单位。一个字节等于8个比特,即1 Byte=8bit。 ③千字节(KB、Kilo Byte):电脑的内存容量都很大,一般都是以千字节作单位来表示。1KB=1024Byte。 ④兆字节(MB Mega Byte):90年代流行微机的硬盘和内存等一般都是以兆字节(MB)为单位。1 MB=1024KB。 ⑤吉字节(GB、Giga Byte):目前市场流行的微机的硬盘已经达到4.3GB、6.4GB、8.1GB、12G、13GB等规格。1GB=1024MB。 ⑥太字节(TB、Tera byte):1TB=1024GB。 (三)输入/输出设备 输入设备是用来接受用户输入的原始数据和程序,并将它们变为计算机能识别的二进制存入到内存中。常用的输入设备有键盘、鼠标、扫描仪、光笔等。 输出设备用于将存入在内存中的由计算机处理的结果转变为人们能接受的形式输出。常用的输出设备有显示器、打印机、绘图仪等。 (四)总线 总线是一组为系统部件之间数据传送的公用信号线。具有汇集与分配数据信号、选择发送信号的部件与接收信号的部件、总线控制权的建立与转移等功能。典型的微机计算机系统的结构如图2-3所示,通常多采用单总线结构,一般按信号类型将总线分为三组,其中AB(Address Bus)为地址总线;DB(Data Bus)为数据总线;CB(Control Bus)控制总线。 (五)微型计算机主要技术指标 ①CPU类型:是指微机系统所采用的CPU芯片型号,它决定了微机系统的档次。 ②字长:是指CPU一次最多可同时传送和处理的二进制位数,安长直接影响到计算机的功能、用途和应用范围。如Pentium是64位字长的微处理器,即数据位数是64位,而它的寻址位数是32位。 ③时钟频率和机器周期:时钟频率又称主频,它是指CPU内部晶振的频率,常用单位为兆(MHz),它反映了CPU的基本工作节拍。一个机器周期由若干个时钟周期组成,在机器语言中,使用执行一条指令所需要的机器周期数来说明指令执行的速度。一般使用CPU类型和时钟频率来说明计算机的档次。如Pentium III 500等。 ④运算速度:是指计算机每秒能执行的指令数。单位有MIPS(每秒百万条指令)、MFLOPS(秒百万条浮点指令) ⑤存取速度:是指存储器完成一次读取或写存操作所需的时间,称为存储器的存取时间或访问时间。而边连续两次或写所需要的最短时间,称为存储周期。对于半导体存储器来说,存取周期大约为几十到几百毫秒之间。它的快慢会影响到计算机的速度。 ⑥内、外存储器容量:是指内存存储容量,即内容储存器能够存储信息的字节数。外储器是可将程序和数据永久保存的存储介质,可以说其容量是无限的。如硬盘、软盘已是微机系统中不可缺少的外部设备。迄今为止,所有的计算机系统都是基于冯·诺依曼存储程序的原理。内、外存容量越大,所能运行的软件功能就越丰富。CPU的高速度和外存储器的低速度是微机系统工作过程中的主要瓶颈现象,不过由于硬盘的存取速度不断提高,目前这种现象已有所改善。 我们先从最早的计算机讲起,人们在最初设计计算机时采用这样一个模型: 人们通过输入设备把需要处理的信息输入计算机,计算机通过中央处理器把信息加工后,再通过输出设备把处理后的结果告诉人们。 其实这个模型很简单,举个简单的例子,你要处理的信息是1+1,你把这个信息输入到计算机中后,计算机的内部进行处理,再把处理后的结果告诉你。 早期计算机的输入设备十分落后,根本没有现在的键盘和鼠标,那时候计算机还是一个大家伙,最早的计算机有两层楼那么高。人们只能通过扳动计算机庞大的面板上无数的开头来向计算机输入信息,而计算机把这些信息处理之后,输出设备也相当简陋,就是计算机面板上无数的信号灯。所以那时的计算机根本无法处理像现在这样各种各样的信息,它实际上只能进行数字运算。 当时人们使用计算机也真是够累的。但在当时,就算是这种计算机也是极为先进的了,因为它把人们从繁重的手工计算中解脱出来,而且极大地提高了计算速度。 随着人们对计算机的使用,人们发现上述模型的计算机能力有限,在处理大量数据时就越发显得力不从心。为些人们对计算机模型进行了改进,提出了这种模型: 就是在中央处理器旁边加了一个内部存储器。这个模型的好处在于。先打个比方说,如果老师让你心算一道简单题,你肯定毫不费劲就算出来了,可是如果老师让你算20个三位数相乘,你心算起来肯定很费力,但如果给你一张草稿纸的话,你也能很快算出来。 可能你会问这和计算机有什么关系?其实计算机也是一样,一个没有内部存储器的计算机如果让它进行一个很复杂的计算,它可能根本就没有办法算出来,因为它的存储能力有限,无法记住很多的中间的结果,但如果给它一些内部存储器当“草稿纸”的话,计算机就可以把一些中间结果临时存储到内部存储器上,然后在需要的时候再把它取出来,进行下一步的运算,如此往复,计算机就可以完成很多很复杂的计算。 随着时代的发展,人们越来越感到计算机输入和输出方式的落后,改进这两方面势在必行。在输入方面,为了不再每次扳动成百上千的开头,人们发明了纸带机。纸带机的工作原理是这样的,纸带的每一行都标明了26个字母、10个数字和一些运算符号,如果这行的字母A上面打了一个孔,说明这里要输入的是字母A,同理,下面的行由此类推。这样一个长长的纸带就可以代表很多的信息,人们把这个纸带放入纸带机,纸带机还要把纸带上的信息翻译给计算机,因为计算机是看不懂这个纸带的。 这样虽然比较麻烦,但这个进步确实在很大程度上促进了计算机的发展。在发明纸带的同时,人们也对输出系统进行了改进,用打印机代替了计算机面板上无数的信号灯。打印机的作用正好和纸带机相反,它负责把计算机输出的信息翻译成人能看懂的语言,打印在纸上,这样人们就能很方便地看到输出的信息,再也不用看那成百上千的信号灯了。 不过人们没有满足,他们继续对输入和输出系统进行改进。后来人们发明了键盘和显示器。这两项发明使得当时的计算机和我们现在使用的计算机有些类似了,而且在些之前经过长时间的改进,计算机的体积也大大地缩小了。键盘和显示器的好处在于人们可以直接向计算机输入信息,而计算机也可以及时把处理结果显示在屏幕上。 可是随着人们的使用,逐渐又发现了不如意之处。因为人们要向计算机输入的信息越来越多,往往要输入很长时间后,才让计算机开始处理,而在输入过程中,如果停电,那前面输入的内容就白费了,等来电后,还要全部重新输入。就算不停电,如果人们上次输入了一部分信息,计算机处理理了,也输出了结果;人们下一次再需要计算机处理这部分信息的时候,还要重新输入。对这种重复劳动的厌倦导致了计算机新的模型的产生。 上面说的是硬件的工作原理,那么在软件上,我们又是如何使用计算机的呢? 在前面我们讲过,我们可以通过操作系统给计算机布置工作,操作系统也可以把计算机的工作结果告诉我们。可是操作系统的功能也不是无限的,实际上计算机的很多功能是靠多种应用软件来实现的。操作系统一般只负责管理好计算机,使它能正常工作。而众多的应用软件才充分发挥了计算机的作用。但这些应用软件都是建立在操作系统上的,一般情况下,某一种软件都是为特定的操作系统而设计的,因为这些软件不能直接和计算机交换信息,需要通过操作系统来传递信息。 这就是所谓的“硬”、“软”结合。硬件就是我们能看见的这些东西:主机、显示器、键盘、鼠标等,而软件是我们看不见的,存在于计算机内部的。打个比方,硬件就好比人类躯体,而软件就好比人类的思想,没有躯体,思想是无法存在的,但没有思想的躯体也只是一个植物人。一个正常人要完成一项工作,都是躯体在思想的支配下完成的。电脑和这相类似,没有主机等硬件,软件是无法存在的;而一个没有软件的计算机也只是一堆废铁。 还有一个重要的概念没有讲,就是操作系统是如何管理文件的呢?其实也很简单,文件都有自己的名字,叫文件名,用来区分不同的文件的。计算机中的文件有很多,成千上万,光用名字来区分也不利于查找,所以计算机中又有了文件夹的概念,把不同类型的文件存储在不同的文件夹中,查找起来就快多了,也不会太乱。文件多了,可以分别存储在不同的文件夹中,而当文件夹多了之后,再把一些相关的文件夹存储在更在的文件夹中,这样管理文件是比较科学的。
0和1
电脑的工作原理跟电视、VCD机差不多,您给它发一些指令,它就会按您的意思执行某项功能。不过,您可知道,这些指令并不是直接发给您要控制的硬件,而是先通过前面提过的输入设备,如键盘、鼠标,接收您的指令,然后再由中央处理器(CPU)来处理这些指令,最后才由输出设备输出您要的结果。   现在,让我们用一道简单的计算题来回想一下人脑的工作方式。   题目很简单:8+4÷2=?   首先,我们得用笔将这道题记录在纸上,记在大脑中,再经过脑神经元的思考,结合我们以前掌握的知识,决定用四则运算规则和九九乘法口诀来处理,先用脑算出4÷2=2这一中间结果,并记录于纸上,然后再用脑算出8+2=10这一最终结果,并记录于纸上。   通过做这一简单运算题,我们发现一规律:首先通过眼、耳等感觉器官将捕捉的信息输送到大脑中并存储起来,然后对这一信息进行加工处理,再由大脑控制人把最终结果,以某种方式表达出来。   电脑正是模仿人脑进行工作的(这也是“电脑”名称的来源),其部件如输入设备、存储器、运算器、控制器、输出设备等分别与人脑的各种功能器官对应,以完成信息的输入、处理、输出。
就是按照人们预先输入的指令工作的
最基本的,就是数字的二进制计算

文章TAG:4545  晶振  多少  
下一篇