读取CMOS内存中的时钟

一、CMOS内存信息详解
一般的PC/AT、286、386、486等微机均配有CMOS芯片,CMOS&127;芯片包含了一个实时钟
和64个字节的CMOS内存。在CMOS内存中,0-0DH为实时钟的有关信息,0E-&127;3FH包含
计算机的硬件配置信息,如常规内存的大小、扩展内存的大小、&127;软盘的类型、固定
盘的类型及其物理参数、显示器的类型等,这些参数与计算机能否正常工作具有密切的
关系,另外还有计算机的开机口令和其它辅助设置信息。表1列出了CMOS内存各字
节的用途。

偏移量
(十六进制)
偏移量
(十进制)
字段长度
(字节)
功能描述
00h
0
1
用BCD描述的当前秒(00-59)
01h
1
1
用BCD描述的报警时钟秒
02h
2
1
用BCD描述的报警当前分钟(00-59)
03h
3
1
用BCD描述的报警时钟分钟
04h
4
1
用BCD描述的报警当前小时(00-23)
05h
5
1
用BCD描述的报警时钟(以小时为单位)
06h
6
1
用BCD描述的当前日期(星期几)(00-06)
07h
7
1
用BCD描述的当前日期(日)(00-31)
08h
8
1
用BCD描述的当前月(00-12)
09h
9
1
用BCD描述的当前年(00-99)
0Ah
10
1
状态注册码A
0Bh
11
1
状态注册码B
0Ch
12
1
状态注册码C
0Dh
13
1
状态注册码D
0Eh
14
1
诊断状态
0Fh
15
1
系统关闭代码
10h
16
1
软盘驱动器类型
11h
17
1
高级BIOS设置选项
12h
18
1
硬盘O/I类型(0-15)
13h
19
1
键盘输人速率与延迟
14h
20
1
安装设备
15h
21
1
从低位字节计数的基本内存,以1K计数
16h
22
1
从高位字节计数的基本内存,以1K计数
17h
23
1
从低位字节计数的扩展内存,以1K计数
18h
24
1
从高位字节计数的扩展内存,以1K计数
19h
25
1
硬盘扩展类型0(0-255)
1Ah
26
1
硬盘扩展类型1(0-255)
1Bh
27
8
硬盘0的用户定义类型信息
24h
36
8
硬盘1的用户定义类型信息
2Dh
45
1
高级BIOS设置选项
2Eh
46
1
高位字节CMOS校验和
2Fh
47
1
低位字节CMOS校验和
30h
48
1
从低位字节计数的POST报告扩展内存
31h
49
1
从高位字节计数的POST报告扩展内存
32h
50
1
BCD码公元数(00-90)
33h
51
1
通电自检信息标志
34h
52
2
高级BIOS设置选项
36h
54
1
指定芯片组的BIOS设置选项
37h
55
7
加电口令(通常加密)
3Eh
62
1
从高位字节计数的扩展CMOS校验和
3Fh
63
1
从低位字节计数的扩展CMOS校验和

 

二、读写CMOS内存的方法
CMOS内存的地址口和数据口的口地址分别为70H和71H。在对CMOS内存进行写操作时,首先
将要写入的CMOS内存的地址送到口地址70H,&127;再将要写入的数据送口地址71H。在对
CMOS内存进行读操作时,首先将要读出的CMOS内存的地址送到口地址70H,再从口地址71H
读出数据到AL寄存器。

三、Linux下的c程序如下

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值