人生倒计时
- 今日已经过去小时
- 这周已经过去天
- 本月已经过去天
- 今年已经过去个月
codeysys写入准备值的简单介绍
电脑主板故障诊断卡常见代码有哪些,代表什么意思?
1、特殊代码“00”和“FF”及其它起始码有三种情况出现:
(使用浏览器扫码进入在线客服窗口)
复制联系方式
①已由一系列其它代码之后再出现:“00”或“FF”,则主板OK。
②如果将CMOS中设置无错误,则不严重的故障不会影响BIOS自检的继续,而最终出现“00”或“FF”。
③一开机就出现“00”或“FF”或其它起始代码并且不变化则为板没有运行起来。
2、本表是按代码值从小到大排序,卡中出码顺序不定。
3、未定义的代码表中未列出。
4、对于不同BIOS(常用的AMI、Award、Phoenix)用同一代码所代表的意义有所不同,因此应弄清您所检测的电脑是属于哪一种类型的BIOS,您可查问你的电脑使用手册,或从主板上的BIOS芯片上直接查看,也可以在启动屏幕时直接看到。
5、有少数主板的PCI槽只有前一部分代码出现,但ISA槽则有完整自检代码输出。且目前已发现有极个别原装机主板的ISA槽无代码输出,而PCI槽则有完整代码输出,故建议您在查看代码不成功时,将本双槽卡换到另一种插槽试一下。另外,同一块主板的不同PCI槽,有的槽有完整代码送出,如DELL810主板只有靠近CPU的一个PCI槽有完整的代码显示,一直变化到“00”或“FF”,而其它槽走到“38”则不继续变化。
6、复位信号所需时间ISA与PCI不一定同步,故有可能ISA开始出代码,但PCI的复位灯还不熄,故PCI代码停在起始码上。
代码 Award BIOS Ami BIOS Phoenix BIOS或Tandy 3000 BIOS
00 . 已显示系统的配置;即将控制INI19引导装入。 .
01 处理器测试1,处理器状态核实,如果测试失败,循环是无限的。 处理器寄存器的测试即将开始,不可屏蔽中断即将停用。 CPU寄存器测试正在进行或者失败。
02 确定诊断的类型(正常或者制造)。如果键盘缓冲器含有数据就会失效。 停用不可屏蔽中断;通过延迟开始。 CMOS写入/读出正在进行或者失灵。
03 清除8042键盘控制器,发出TESTKBRD命令(AAH) 通电延迟已完成。 ROM BIOS检查部件正在进行或失灵。
04 使8042键盘控制器复位,核实TESTKBRD。 键盘控制器软复位/通电测试。 可编程间隔计时器的测试正在进行或失灵。
05 如果不断重复制造测试1至5,可获得8042控制状态。 已确定软复位/通电;即将启动ROM。 DMA初如准备正在进行或者失灵。
06 使电路片作初始准备,停用视频、奇偶性、DMA电路片,以及清除DMA电路片,所有页面寄存器和CMOS停机字节。 已启动ROM计算ROM BIOS检查总和,以及检查键盘缓冲器是否清除。 DMA初始页面寄存器读/写测试正在进行或失灵。
07 处理器测试2,核实CPU寄存器的工作。 ROM BIOS检查总和正常,键盘缓冲器已清除,向键盘发出BAT(基本保证测试)命令。 .
08 使CMOS计时器作初始准备,正常的更新计时器的循环。 已向键盘发出BAT命令,即将写入BAT命令。 RAM更新检验正在进行或失灵。
09 EPROM检查总和且必须等于零才通过。 核实键盘的基本保证测试,接着核实键盘命令字节。 第一个64K RAM测试正在进行。
0A 使视频接口作初始准备。 发出键盘命令字节代码,即将写入命令字节数据。 第一个64K RAM芯片或数据线失灵,移位。
0B 测试8254通道0。 写入键盘控制器命令字节,即将发出引脚23和24的封锁/解锁命令。 第一个64K RAM奇/偶逻辑失灵。
0C 测试8254通道1。 键盘控制器引脚23、24已封锁/解锁;已发出NOP命令。 第一个64K RAN的地址线故障。
0D 1、检查CPU速度是否与系统时钟相匹配。2、检查控制芯片已编程值是否符合初设置。3、视频通道测试,如果失败,则鸣喇叭。 已处理NOP命令;接着测试CMOS停开寄存器。 第一个64K RAM的奇偶性失灵
0E 测试CMOS停机字节。 CMOS停开寄存器读/写测试;将计算CMOS检查总和。 初始化输入/输出端口地址。
0F 测试扩展的CMOS。 已计算CMOS检查总和写入诊断字节;CMOS开始初始准备。 .
10 测试DMA通道0。 CMOS已作初始准备,CMOS状态寄存器即将为日期和时间作初始准备。 第一个64K RAM第0位故障。
11 测试DMA通道1。 CMOS状态寄存器已作初始准备,即将停用DMA和中断控制器。 第一个64DK RAM第1位故障。
12 测试DMA页面寄存器。 停用DMA控制器1以及中断控制器1和2;即将视频显示器并使端口B作初始准备。 第一个64DK RAM第2位故障。
13 测试8741键盘控制器接口。 视频显示器已停用,端口B已作初始准备;即将开始电路片初始化/存储器自动检测。 第一个64DK RAM第3位故障。
14 测试存储器更新触发电路。 电路片初始化/存储器处自动检测结束;8254计时器测试即将开始。 第一个64DK RAM第4位故障。
15 测试开头64K的系统存储器。 第2通道计时器测试了一半;8254第2通道计时器即将完成测试。 第一个64DK RAM第5位故障。
16 建立8259所用的中断矢量表。 第2通道计时器测试结束;8254第1通道计时器即将完成测试。 第一个64DK RAM第6位故障。
17 调准视频输入/输出工作,若装有视频BIOS则启用。 第1通道计时器测试结束;8254第0通道计时器即将完成测试。 第一个64DK RAM第7位故障。
18 测试视频存储器,如果安装选用的视频BIOS通过,由可绕过。 第0通道计时器测试结束;即将开始更新存储器。 第一个64DK RAM第8位故障。
19 测试第1通道的中断控制器(8259)屏蔽位。 已开始更新存储器,接着将完成存储器的更新。 第一个64DK RAM第9位故障。
1A 测试第2通道的中断控制器(8259)屏蔽位。 正在触发存储器更新线路,即将检查15微秒通/断时间。 第一个64DK RAM第10位故障。
1B 测试CMOS电池电平。 完成存储器更新时间30微秒测试;即将开始基本的64K存储器测试。 第一个64DK RAM第11位故障。
1C 测试CMOS检查总和。 . 第一个64DK RAM第12位故障。
1D 调定CMOS配置。 . 第一个64DK RAM第13位故障。
1E 测定系统存储器的大小,并且把它和CMOS值比较。 . 第一个64DK RAM第14位故障。
1F 测试64K存储器至最高640K。 . 第一个64DK RAM第15位故障。
20 测量固定的8259中断位。 开始基本的64K存储器测试;即将测试地址线。 从属DMA寄存器测试正在进行或失灵。
21 维持不可屏蔽中断(NMI)位(奇偶性或输入/输出通道的检查)。 通过地址线测试;即将触发奇偶性。 主DMA寄存器测试正在进行或失灵。
22 测试8259的中断功能。 结束触发奇偶性;将开始串行数据读/写测试。 主中断屏蔽寄存器测试正在进行或失灵。
23 测试保护方式8086虚拟方式和8086页面方式。 基本的64K串行数据读/写测试正常;即将开始中断矢量初始化之前的任何调节。 从属中断屏蔽存器测试正在进行或失灵。
24 测定1MB以上的扩展存储器。 矢量初始化之前的任何调节完成,即将开始中断矢量的初始准备。 设置ES段地址寄存器注册表到内存高端。
25 测试除头一个64K之后的所有存储器。 完成中断矢量初始准备;将为旋转式断续开始读出8042的输入/输出端口。 装入中断矢量正在进行或失灵。
26 测试保护方式的例外情况。 读出8042的输入/输出端口;即将为旋转式断续开始使全局数据作初始准备。 开启A20地址线;使之参入寻址。
27 确定超高速缓冲存储器的控制或屏蔽RAM。 全1数据初始准备结束;接着将进行中断矢量之后的任何初始准备。 键盘控制器测试正在进行或失灵。
28 确定超高速缓冲存储器的控制或者特别的8042键盘控制器。 完成中断矢量之后的初始准备;即将调定单色方式。 CMOS电源故障/检查总和计算正在进行。
29 . 已调定单色方式,即将调定彩色方式。 CMOS配置有效性的检查正在进行。
2A 使键盘控制器作初始准备。 已调定彩色方式,即将进行ROM测试前的触发奇偶性。 置空64K基本内存。
2B 使磁碟驱动器和控制器作初始准备。 触发奇偶性结束;即将控制任选的视频ROM检查前所需的任何调节。 屏幕存储器测试正在进行或失灵。
2C 检查串行端口,并使之作初始准备。 完成视频ROM控制之前的处理;即将查看任选的视频ROM并加以控制。 屏幕初始准备正在进行或失灵。
2D 检测并行端口,并使之作初始准备。 已完成任选的视频ROM控制,即将进行视频ROM回复控制之后任何其他处理的控制。 屏幕回扫测试正在进行或失灵。
2E 使硬磁盘驱动器和控制器作初始准备。 从视频ROM控制之后的处理复原;如果没有发现EGA/VGA就要进行显示器存储器读/写测试。 检测视频ROM正在进行。
2F 检测数学协处理器,并使之作初始准备。 没发现EGA/VGA;即将开始显示器存储器读/写测试。 .
30 建立基本内存和扩展内存。 通过显示器存储器读/写测试;即将进行扫描检查。 认为屏幕是可以工作的。
31 检测从C800:0至EFFF:0的选用ROM,并使之作初始准备。 显示器存储器读/写测试或扫描检查失败,即将进行另一种显示器存储器读/写测试。 单色监视器是可以工作的。
32 对主板上COM/LTP/FDD/声音设备等I/O芯片编程使之适合设置值。 通过另一种显示器存储器读/写测试;却将进行另一种显示器扫描检查。 彩色监视器(40列)是可以工作的。
33 . 视频显示器检查结束;将开始利用调节开关和实际插卡检验显示器的关型。 彩色监视器(80列)是可以工作的。
34 . 已检验显示器适配器;接着将调定显示方式。 计时器滴答声中断测试正在进行或失灵。
35 . 完成调定显示方式;即将检查BIOS ROM的数据区。 停机测试正在进行或失灵。
36 . 已检查BIOS ROM数据区;即将调定通电信息的游标。 门电路中A-20失灵。
37 . 识别通电信息的游标调定已完成;即将显示通电信息。 保护方式中的意外中断。
38 . 完成显示通电信息;即将读出新的游标位置。 RAM测试正在进行或者地址故障>FFFFH。
39 . 已读出保存游标位置,即将显示引用信息串。 .
3A . 引用信息串显示结束;即将显示发现ESC信息。 间隔计时器通道2测试或失灵。
3B 用OPTI电路片(只是486)使辅助超高速缓冲存储器作初始准备。 已显示发现<ESC>信息;虚拟方式,存储器测试即将开始。 按日计算的日历时钟测试正在进行或失灵。
3C 建立允许进入CMOS设置的标志。 . 串行端口测试正在进行或失灵。
3D 初始化键盘/PS2鼠标/PNP设备及总内存节点。 . 并行端口测试正在进行或失灵。
3E 尝试打开L2高速缓存。 . 数学协处理器测试正在进行或失灵。
40 . 已开始准备虚拟方式的测试;即将从视频存储器来检验。 调整CPU速度,使之与外围时钟精确匹配。
41 中断已打开,将初始化数据以便于0:0检测内存变换(中断控制器或内存不良) 从视频存储器检验之后复原;即将准备描述符表。 系统插件板选择失灵。
42 显示窗口进入SETUP。 描述符表已准备好;即将进行虚拟方式作存储器测试。 扩展CMOS RAM故障。
43 若是即插即用BIOS,则串口、并口初始化。 进入虚拟方式;即将为诊断方式实现中断。 .
44 . 已实现中断(如已接通诊断开关;即将使数据作初始准备以检查存储器在0:0返转。) BIOS中断进行初始化。
45 初始化数学协处理器。 数据已作初始准备;即将检查存储器在0:0返转以及找出系统存储器的规模。 .
46 . 测试存储器已返回;存储器大小计算完毕,即将写入页面来测试存储器。 检查只读存储器ROM版本。
47 . 即将在扩展的存储器试写页面;即将基本640K存储器写入页面。 .
48 . 已将基本存储器写入页面;即将确定1MB以上的存储器。 视频检查,CMOS重新配置。
49 . 找出1BM以下的存储器并检验;即将确定1MB以上的存储器。 .
4A . 找出1MB以上的存储器并检验;即将检查BIOS ROM数据区。 进行视频的初始化。
4B . BIOS ROM数据区的检验结束,即将检查<ESC>和为软复位清除1MB以上的存储器。 .
4C . 清除1MB以上的存储器(软复位)即将清除1MB以上的存储器. 屏蔽视频BIOS ROM。.
4D 已清除1MB以上的存储器(软复位);将保存存储器的大小。 .
4E 若检测到有错误;在显示器上显示错误信息,并等待客户按<F1>键继续。 开始存储器的测试:(无软复位);即将显示第一个64K存储器的测试。 显示版权信息。
4F 读写软、硬盘数据,进行DOS引导。 开始显示存储器的大小,正在测试存储器将使之更新;将进行串行和随机的存储器测试。 .
50 将当前BIOS监时区内的CMOS值存到CMOS中。 完成1MB以下的存储器测试;即将高速存储器的大小以便再定位和掩蔽。 将CPU类型和速度送到屏幕。
51 . 测试1MB以上的存储器。 .
52 所有ISA只读存储器ROM进行初始化,最终给PCI分配IRQ号等初始化工作。 已完成1MB以上的存储器测试;即将准备回到实址方式。 进入键盘检测。
53 如果不是即插即用BIOS,则初始化串口、并口和设置时种值。 保存CPU寄存器和存储器的大小,将进入实址方式。 .
54 . 成功地开启实址方式;即将复原准备停机时保存的寄存器。 扫描“打击键”
55 . 寄存器已复原,将停用门电路A-20的地址线。 .
56 . 成功地停用A-20的地址线;即将检查BIOS ROM数据区。 键盘测试结束。
57 . BIOS ROM数据区检查了一半;继续进行。 .
58 . BIOS ROM的数据区检查结束;将清除发现<ESC>信息。 非设置中断测试。
59 . 已清除<ESC>信息;信息已显示;即将开始DMA和中断控制器的测试。 .
5A . . 显示按“F2”键进行设置。
5B . . 测试基本内存地址。
5C . . 测试640K基本内存。
60 设置硬盘引导扇区病毒保护功能。 通过DMA页面寄存器的测试;即将检验视频存储器。 测试扩展内存。
61 显示系统配置表。 视频存储器检验结束;即将进行DMA#1基本寄存器的测试。 .
62 开始用中断19H进行系统引导。 通过DMA#1基本寄存器的测试;即将进行DMA#2寄存器的测试。 测试扩展内存地址线。
63 . 通过DMA#2基本寄存器的测试;即将检查BIOS ROM数据区。 .
64 . BIOS ROM数据区检查了一半,继续进行。 .
65 . BIOS ROM数据区检查结束;将把DMA装置1和2编程。 .
66 . DMA装置1和2编程结束;即将使用59号中断控制器作初始准备。 Cache注册表进行优化配置。
67 . 8259初始准备已结束;即将开始键盘测试。 .
68 . . 使外部Cache和CPU内部Cache都工作。
6A . . 测试并显示外部Cache值。
6C . . 显示被屏蔽内容。
6E . . 显示附属配置信息。
70 . . 检测到的错误代码送到屏幕显示。
72 . . 检测配置有否错误。
74 . . 测试实时时钟。
76 . . 扫查键盘错误。
7A . . 锁键盘。
7C . . 设置硬件中断矢量。
7E . . 测试有否安装数学处理器。
80 . 键盘测试开始,正在清除和检查有没有键卡住,即将使键盘复原。 关闭可编程输入/输出设备。
81 . 找出键盘复原的错误卡住的键;即将发出键盘控制端口的测试命令。 .
82 . 键盘控制器接口测试结束,即将写入命令字节和使循环缓冲器作初始准备。 检测和安装固定RS232接口(串口)。
83 . 已写入命令字节,已完成全局数据的初始准备;即将检查有没有键锁住。 .
84 . 已检查有没有锁住的键,即将检查存储器是否与CMOS失配。 检测和安装固定并行口。
85 . 已检查存储器的大小;即将显示软错误和口令或旁通安排。 .
86 . 已检查口令;即将进行旁通安排前的编程。 重新打开可编程I/O设备和检测固定I/O是否有冲突。
87 . 完成安排前的编程;将进行CMOS安排的编程。 .
88 . 从CMOS安排程序复原清除屏幕;即将进行后面的编程。 初始化BIOS数据区。
89 . 完成安排后的编程;即将显示通电屏幕信息。 .
8A . 显示头一个屏幕信息。 进行扩展BIOS数据区初始化。
8B . 显示了信息:即将屏蔽主要和视频BIOS。 .
8C . 成功地屏蔽主要和视频BIOS,将开始CMOS后的安排任选项的编程。 进行软驱控制器初始化。
8D . 已经安排任选项编程,接着检查滑了鼠和进行初始准备。 .
8E . 检测了滑鼠以及完成初始准备;即将把硬、软磁盘复位。 .
8F . 软磁盘已检查,该磁碟将作初始准备,随后配备软磁碟。 .
90 . 软磁碟配置结束;将测试硬磁碟的存在。 硬盘控制器进行初始化。
91 . 硬磁碟存在测试结束;随后配置硬磁碟。 局部总线硬盘控制器初始化。
92 . 硬磁碟配置完成;即将检查BIOS ROM的数据区。 跳转到用户路径2。
93 . BIOS ROM的数据区已检查一半;继续进行。 .
94 . BIOS ROM的数据区检查完毕,即调定基本和扩展存储器的大小。 关闭A-20地址线。
95 . 因应滑鼠和硬磁碟47型支持而调节好存储器的大小;即将检验显示存储器。 .
96 . 检验显示存储器后复原;即将进行C800:0任选ROM控制之前的初始准备。 “ES段”注册表清除。
97 . C800:0任选ROM控制之前的任何初始准备结束,接着进行任选ROM的检查及控制。 .
98 . 任选ROM的控制完成;即将进行任选ROM回复控制之后所需的任何处理。 查找ROM选择。
99 . 任选ROM测试之后所需的任何初始准备结束;即将建立计时器的数据区或打印机基本地址。 .
9A . 调定计时器和打印机基本地址后的返回操作;即调定RS-232基本地址。 屏蔽ROM选择。
9B . 在RS-232基本地址之后返回;即将进行协处理器测试之初始准备。 .
9C . 协处理器测试之前所需初始准备结束;接着使协处理器作初始准备。 建立电源节能管理。
9D . 协处理器作好初始准备,即将进行协处理器测试之后的任何初始准备。 .
9E . 完成协处理器之后的初始准备,将检查扩展键盘,键盘识别符,以及数字锁定。 开放硬件中断。
9F . 已检查扩展键盘,调定识别标志,数字锁接通或断开,将发出键盘识别命令。 .
A0 . 发出键盘识别命令;即将使键盘识别标志复原。 设置时间和日期。
A1 . 键盘识别标志复原;接着进行高速缓冲存储器的测试。 .
A2 . 高速缓冲存储器测试结束;即将显示任何软错误。 检查键盘锁。
A3 . 软错误显示完毕;即将调定键盘打击的速率。 .
A4 . 调好键盘的打击速率,即将制订存储器的等待状态。 键盘重复输入速率的初始化。
A5 . 存储器等候状态制定完毕;接着将清除屏幕。 .
A6 . 屏幕已清除;即将启动奇偶性和不可屏蔽中断。 .
A7 . 已启用不可屏蔽中断和奇偶性;即将进行控制任选的ROM在E000:0之所需的任何初始准备。 .
A8 . 控制ROM在E000:0之前的初始准备结束,接着将控制E000:0之后所需的任何初始准备。 清除“F2”键提示。
A9 . 从控制E000:0 ROM返回,即将进行控制E000:0任选ROM之后所需的任何初始准备。 .
AA . 在E000:0控制任选ROM之后的初始准备结束;即将显示系统的配置。 扫描“F2”键打击。
AC . . 进入设置.
AE . . 清除通电自检标志。
B0 . . 检查非关键性错误。
B2 . . 通电自检完成准备进入操作系统引导。
B4 . . 蜂鸣器响一声。
B6 . . 检测密码设置(可选)。
B8 . . 清除全部描述表。
BC . . 清除校验检查值。
BE 程序缺省值进入控制芯片,符合可调制二进制缺省值表。 . 清除屏幕(可选)。
BF 测试CMOS建立值。 . 检测病毒,提示做资料备份。
C0 初始化高速缓存。 . 用中断19试引导。
C1 内存自检。 . 查找引导扇区中的“55”“AA”标记。
C3 第一个256K内存测试。 . .
C5 从ROM内复制BIOS进行快速自检。 . .
C6 高速缓存自检。 . .
CA 检测Micronies超速缓冲存储器(如果存在),并使之作初始准备。 . .
CC 关断不可屏蔽中断处理器。 . .
EE 处理器意料不到的例外情况。 . .
FF 给予INI19引导装入程序的控制,主板OK
哈夫曼编/译码器 数据结构实践题
#includestring.h
#include fstream
typedef struct
{
char character;
unsigned int weight;
unsigned int parent,lchild,rchild;
}HTNode,*HuffmanTree;
typedef char **HuffmanCode;
char *c;
HuffmanTree HT;
HuffmanCode HC;
void menu() //定义菜单函数
{
printf("pleace make the choice:\n");
cout"***** I: 初始化 *****"endl;
cout"***** E:编码 *****"endl;
cout"***** D:译码 *****"endl;
cout"***** P:印代码文件 *****"endl;
cout"***** T: 印赫夫曼树 *****"endl;
cout"***** Q: 退出 *****"endl;
}
void Select(HuffmanTree HT,int end,int s1,int s2) //选择权值最小的两个结点
{
int i;
int weight1,weight2;
weight1=1000;
for(i=1;i=end;i++)
{
if(HT[i].parent==0HT[i].weightweight1)
{
weight1 = HT[i].weight;
s1 = i;
}
}
for(i=1;i=end;i++)
{
if(HT[i].parent==0HT[i].weightweight2(i!=s1))
{
weight2 = HT[i].weight;
s2 = i;
}
}
}
void Initialization(HuffmanTree HT,HuffmanCode HC) //建立赫夫曼树
{
FILE *fp,*fp1;
fp=fopen("hfmTree.txt","w+");
fp1=fopen("ht.txt","w+");
int m,n,i,s1,s2,start,f,b;
int *w;
char *cd;
bool flag = true;
printf("please input n: \n");
scanf("%d",n);
fprintf(fp,"%d\n",n);
fprintf(fp1,"%d\n",n);
if(n=1)return;
w=(int *)malloc((n+1)*sizeof(int)); //动态申请数组空间存储结点的权值
c=(char *)malloc((n+1)*sizeof(char)); //动态申请数组空间存储结点字符
printf("please input character and weight: \n");
for(i=1;i=n;i++)
{
getchar();
cout"请输入第"i"个字符及其权值:";
scanf("%c",c[i]);
scanf("%d",w[i]);
}
m=2*n-1;
HT=(HuffmanTree)malloc((m+1)*sizeof(HTNode));
for(i=1;i=n;i++) //初始化赫夫曼树
{
HT[i].character=c[i];
HT[i].weight=w[i];
HT[i].parent=0;
HT[i].lchild=0;
HT[i].rchild=0;
}
for(i=n+1;i=m;++i)
{
HT[i].character=0;
HT[i].weight=0;
HT[i].parent=0;
HT[i].lchild=0;
HT[i].rchild=0;
}
for(i=n+1;i=m;++i)
{
Select(HT,i-1,s1,s2);
HT[s1].parent=i;
HT[s2].parent=i;
HT[i].lchild=s1;HT[i].rchild=s2;
HT[i].weight=HT[s1].weight+HT[s2].weight;
}
for(i=n+1;i2*n;i++)
{
fprintf(fp1,"%d ",HT[i].lchild);
fprintf(fp1,"%d\n",HT[i].rchild);
}
//---从叶子到根逆向求每个字符的赫夫曼编码
HC = (HuffmanCode)malloc((n+1)*sizeof(char*));//分配n个字符编码的头指针向量
HC[0] = NULL;
cd = (char *)malloc(n*sizeof(char));//分配求编码的工作空间
cd[n-1] = '\0'; //编码结束符
for(i=1;i=n;i++)//逐个字符求赫夫曼编码
{
start = n-1; //编码结束符位置
for(b=i,f=HT[i].parent;f!=0;b=f,f=HT[f].parent)//从叶子到根逆向求编码
{
if(HT[f].lchild == b)
cd[--start] = '0';
else
cd[--start] = '1';
}
HC[i] = (char *)malloc((n-start)*sizeof(char)); //为第i个字符分配存储空间
strcpy(HC[i],cd);
printf("字符%c的编码是:",c[i]);
printf("%s\n",HC[i]);
fputc(HT[i].character,fp); //将编码写入文件hfmTree中
fputs(HC[i],fp);
fputc('\n',fp);
}
free(cd);
fclose(fp);
fclose(fp1);
}
void Encoding(HuffmanTree HT,HuffmanCode HC) //利用已建好的赫夫曼树,对文件ToBeTran中的正文进行编码
{
int choice,i,n;
char ch;
ifstream inf("hfmTree.txt",ios::in); //将文件hfmTree.txt中的赫夫曼树读入内存
if(!inf)
{
cerr"open hmfTree failed!"endl;
exit(1);
}
infn;
inf.get();
HC = (HuffmanCode)malloc((n+1)*sizeof(char*));
c = (char *)malloc((n+1)*sizeof(char));
for(i=1;i=n;i++)
{
HC[i] = (char *)malloc((n-1)*sizeof(char));
inf.get(c[i]);
infHC[i];
inf.get();
}
inf.close();
getchar();
printf("是否要改写要译码的正文?请选择Y或N\n");//选择译文,Y重新创建ToBeTran,N文件ToBeTran已存在
scanf("%c",ch);
getchar();
if(ch=='Y') //重新创建文件ToBeTran.txt
{
ofstream outfile("ToBeTran.txt",ios::out);
if(!outfile)
{
cerr"create file failed!"endl;
exit(1);
}
outfile"THIS PROGRAME IS MY FAVORITE";
outfile.close();
}
ifstream infile("ToBeTran.txt",ios::in);
if(!infile)
{
cerr"open ToBeTran.txt failed!"endl;
exit(1);
}
ofstream outfile("CodeFile.txt",ios::out);
if(!outfile)
{
cerr"open CodeFile.txt failed!"endl;
exit(1);
}
while(true) //讲正文进行译码,写入文件CodeFile.txt
{
infile.get(ch);
if(infile.eof()) break;
for(i=1;i=n;i++)
{
if(ch == c[i])
{
outfileHC[i];
coutHC[i]" ";
break;
}
}
coutendl;
if(i==n+1)
{
cout"error!"endl;
exit(1);
}
}
infile.close();
outfile.close();
cout"sucess!"endl;
}
void Decoding(HuffmanTree HT,HuffmanCode HC) //译码
{
int i,n;
char ht;
ifstream infile("ht.txt",ios::in);
if(!infile)
{
cerr"open ht.txt failed!"endl;
exit(1);
}
infilen;
infile.get();
HT = (HuffmanTree)malloc((2*n)*sizeof(HTNode));
for(i=0;i=n;i++)
{
HT[i].lchild=HT[i].rchild=HT[i].parent=0;
}
for(i=n+1;i=2*n;i++)
{
infileHT[i].lchildHT[i].rchild;
infile.get();
}
infile.close();
ifstream inf1("hfmTree.txt",ios::in);
if(!inf1)
{
cerr"open hmfTree.txt failed!"endl;
exit(1);
}
inf1n;
inf1.get();
HC = (HuffmanCode)malloc((n+1)*sizeof(char*));
c = (char *)malloc(n*sizeof(char));
for(i=1;i=n;i++) //从文件hmfTree.txt中读出所有字符及其编码,存入HC[i]和c[i]中
{
HC[i] = (char *)malloc((n-1)*sizeof(char));
inf1.get(c[i]);
inf1HC[i];
inf1.get();
}
inf1.close();
ifstream inf("CodeFile.txt",ios::in);
if(!inf)
{
cerr"open CodeFile.txt failed!"endl;
exit(1);
}
ofstream outfile("TextFile.txt",ios::out);
if(!outfile)
{
cerr"open TextFile.txt failed!"endl;
exit(1);
}
inf.get(ht);
while(!inf.eof())
{
if(inf.eof()) break;
for(i=2*n-1;HT[i].lchild0||HT[i].rchild0;)
{
if(ht=='0')
i = HT[i].lchild;
else if(ht=='1')
i = HT[i].rchild;
inf.get(ht);
}
outfilec[i];
}
inf.close();
outfile.close();
cout"译码成功!"endl;
}
int main()
{
char ch;
menu();
scanf("%c",ch);
while(true)
{
switch(ch)
{
case 'I':
Initialization(HT,HC);
menu();
cout"请输入选项:";
getchar();
scanf("%c",ch);
break;
case 'E':
Encoding(HT,HC);
menu();
cout"请输入选项:";
getchar();
scanf("%c",ch);
break;
case 'D':
Decoding(HT,HC);
menu();
cout"请输入选项:";
getchar();
scanf("%c",ch);
break;
case 'Q':
exit(0);
break;
default:
cout"error!"endl;
scanf("%c",ch);
break;
}
}
return 0;
}
matlab导入数据后怎么做三维可视化
考查如下三维立体图形的性质
V=v=f(x,y,z)=(x+y+z)(xy+xz+yz)-10xyz
当V取不同值时,会对应不同的[b][color=red]曲面图形[/color][/b],但是假如说我们将V取为[b][color=red]一个区间的连续值[/color][/b]时,那么就得到了一个由许多曲面构成的[b][color=red]三维立体[/color][/b]了
我们现在感兴趣的就是那个由许多曲面组成的[b][color=red]三维立体[/color][/b],因为Matlab为它们提供了相关的直接的函数
但是有时我们不对整个立体感兴趣,[b][color=red]只对某个曲面感兴趣[/color][/b],问题就出在这里,Matlab中[b][color=red]没有提供[/color][/b]三维隐函数绘图的直接函数,但是我们可以间接的获得,那就是从立体中截取出某个我们感兴趣的曲面,[color=blue]这就是说Matlab对三维曲面的可视化(特别是隐式的)必须先立体化处理,然后再截取我们感兴趣的[/color]
下面我们看一个利用上面提到的标量函数构建立体图形的例子。首先,我们必须生成一个构建立体对象的坐标系:
[code]x=0:0.5:10;
y=x;
z=x;
[X,Y,Z]=meshgrid(x,y,z);[/code]
上面的代码演示使用meshgrid函数在三维空间中的应用。其中XYZ为定义栅格的3个三维数组,它们是由xyz经过三维栅格扩展形成的。也就是说,X是将x复制扩展成具有length(y)行和length(z)页的三维数组;Y是先将y转置为一个列向量,然后复制扩展成为具有length(x)列和length(z)页的三维数组;Z则是先将z转换为1×1×length(z)的三维向量,然后扩展成为length(y)行和length(x)列的三维数组。
下面我们还需要定义一个以三维数组为自变量的标量函数V:
[code]V=(X+Y+Z).*(X.*Y+X.*Z+Y.*Z)-10*X.*Y.*Z;[/code]
好,[b][color=blue]这就得到立体可视化的需要的数据X、Y、Z和V了[/color][/b],下面就是对我们感兴趣的部分或者曲面进行可视化和处理了
三维立体截面图
在2#中我们利用标量函数v=f(x,y,z)=(x+y+z)(xy+xz+yz)-10xyz定义一个立体对象,并准备所需的所有数据,为了使该立体对象可视化,我们可以利用下面的命令查看该立体对象的一些截面。
V=(x+y+z)(xy+xz+yz)-10xyz=0的图形大概如下:
[align=center][attach]1187[/attach][/align]
[align=center][attach]1188[/attach][/align]
[align=center][b][size=5][color=blue]三维立体平面截取[/color][/size][/b][/align][code]slice(X,Y,Z,V,[6 8],[5 9],[3 5])%截取x=6和8,y=5和9,z=3和5等6个截面视图
xlabel('x')
ylabel('y')
zlabel('z')[/code]
[align=center][attach]1184[/attach][/align]
从图中我们可以看到命令为我们截取x=6和8,y=5和9,z=3和5等6个截面视图,注意图中的颜色是根据V的自动绘制的。
[align=center][b][size=5][color=blue]立体三维曲面截取[/color][/size][/b][/align]
在上面我们演示了立体图形的平面截面,在立体图像中,也可以显示立体图形的曲面截面。[code][xs,ys]=meshgrid(x,y);
zs=sin(-xs+ys/2);
slice(X,Y,Z,V,xs,ys,zs)%采用正弦函数截取立体图形的截面,也就是截取满足方程z=sin(-x+y/2)的曲面
xlabel('x')
ylabel('y')
zlabel('z')
[/code][align=center][attach]1185[/attach][/align]
[align=center][b][size=5][color=blue]截面等高线绘制[/color][/size][/b][/align]
除了截图平面和曲面以外,还可以使用contourslice函数为截取的平面添加等高线[code]slice(X,Y,Z,V,[7 3],[5 9],[3 5])
hold on
h=contourslice(X,Y,Z,V,7,[5 9],5);%在x=7,y=5和9,z=5截面上添加等高线
set(h,'edgecolor','k','linewidth',1.5)%设置等高线的的颜色和线宽
xlabel('x')
ylabel('y')
zlabel('z')[/code][align=center][attach]1189[/attach][/align]
三维立体等值面图——三维隐函数绘图
我们总是骂mathworks真是该死,什么函数只要能想得到的就一定有,可以却偏偏没有提供三维隐函数的绘图
呵呵其实,Matlab虽然没有提供直接的绘制三维隐函数图形的函数,但是我们可以使用[b][color=Red]等值面[/color][/b]图来绘制
[b][color=Blue][size=4]所谓等值面图[/size][/color][/b],就是V=f(X,Y,Z)=C,这个C的值确定的时候的曲面图形,它只是三维立体V中的一个曲面而=,相当于3#的截取了一个特殊的曲面而已
除了查看立体对象的截面之外,寻找使V等于某个特定值的表面(等值面),也十分常见。在Matlab中,这以操作可以使用isosurface()函数来实现,该函数与delaunay函数类似,也是返回若干三角形的顶点。将isosurface函数返回的参数传递给patch函数,就可以绘制出有这些三角形构成的等值面了。[code][X,Y,Z,V]=flow(13);
fv=isosurface(X,Y,Z,V,-2);%显示V=-2等等值面
subplot(121)
p=patch(fv);
set(p,'facecolor',[0.5 0.5 0.5],'edgecolor','k');
view(3)
axis equal tight
grid on
subplot(122)
p=patch(shrinkfaces(fv,0.3));%shrinkfaces功能是使表面收缩
set(p,'facecolor',[0.5 0.5 0.5],'edgecolor','k');
view(3)
axis equal tight
grid on[/code][align=center][attach]1190[/attach][/align]
当我们显示的立体图形仅仅是为了观察大体结构时,就没有必要针对所有的数据点作图,因为数据点太多会降低显示速度。[color=Blue]利用Matlab中的reducevolume()和reducepatch()函数可以使用图形在显示之前删除一些数据点或者对一些图形显示影响很小的碎片,从而提高图形显示效率[/color]。
再比如说,我们要绘制三维隐函数x^2+y^2+z^2=5的球体的图形,由于Matlab没有提供直接的绘制三维隐函数图形的函数,故我们只能通过三维立体的等值面来截取,虽然绘制等值面比较麻烦且得到的图形不是很漂亮,但至少比没有好
[b]1、构建三维立体模型[/b]
V=X^2+Y^2+Z^2-5;
[b]2、获取三维立体数据[/b][code][X,Y,Z]=meshgrid(-10:0.5:10);
V=X.^2+Y.^2+Z.^2-5;[/code][b]3、绘制等值面[/b][code]%x^2+y^2+z^2=5相当于V=0的等值面
fv=isosurface(X,Y,Z,V,0);%显示V=0等等值面
p=patch(fv);
set(p,'FaceColor','red','EdgeColor','none');%设置图形的相关属性
view(3)
camlight
lighting gouraud
axis equal tight[/code][align=center][attach]1191[/attach][/align]
三维立体数据平滑化
三维数据也可以通过smooth3()函数来过滤而实现其平滑化[code]data=rand(10,10,10);
datas=smooth3(data,'box',3);%box是光滑方法,Matlab中提供可好几种方法,具体查看帮助
subplot(121)
p=patch(isosurface(data,0.5));
patch(isocaps(data,0.5));
isonormals(data,p);
camlight
lighting phong
axis vis3d off
view(3)
subplot(122)
p=patch(isosurface(datas,0.5));
patch(isocaps(datas,0.5));
isonormals(datas,p);
camlight
lighting phong
axis vis3d off
view(3)[/code]上面用到的isocaps和isonormals函数的用法如下:
isocaps生成块状图的外层表面,而isonormals调整所画碎片的属性,使所显示的图形有正确的光照效果
[align=center][attach]1192[/attach][/align]

matlab怎么实现三维数组的可视化
ThingJS 基于 HTML5 和 WebGL 技术,可方便地在主流浏览器上进行浏览和调试,支持 PC 和移动设备。ThingJS 为可视化应用提供了简单、丰富的功能,只需要具有基本的
Javascript 开发经验即可上手。
ThingJS 提供了场景加载、分层级浏览,对象访问、搜索、以及对象的多种控制方式和丰富的效果展示,可以通过绑定事件进行各种交互操作,还提供了摄像机视角控制、点线面效果、温湿度云图、界面数据展示、粒子效果等各种可视化功能网页链接
ThingJS提供如下相关组件和工具供用户使用:
CityBuilder:聚焦城市的 3D 地图搭建工具,打造你的 3D 城市地图。
CamBuilder:简单、好用、免费的 3D 场景搭建工具。
ThingPano:全景图制作工具,轻松制作并开发全景图应用,实现 3D 宏观场景和全景微观场景的无缝融合。
ThingDepot:上万种模型,数十个行业,自主挑选,一次制作多次复用。
一块华擎ATI芯片主板(bios ami),无接任何外设,测试卡A0,是什么坏了?
A0 是没有通过CPU自检 与FF 是一样的
如拨内存因该显示C1
D3和D5 没有什么意义
计算机故障检测卡说明书
代码含义速查: 请输入两位16进制的故障代码 w_YI
PCI/ISA两用型DEBUG卡故障代码明细表(只适用于PCI/ISA两用型及PCI单用型) iZ
代码 Award BIOS AMI BIOS Phoenix和Tandy3000 BIOS _}3
00 (见特殊代码意义) 已显示系统的配置;即将控制工INT19引导装入。(见特殊代码意义) (见特殊代码意义) |+
01 处理器测试1,处理起状态核实,如果测试失败,循环是无限的。 处理器寄存器的测试即将开始,不可屏蔽中断即将停用。 CPU寄存器测试正在进行或者失灵。 kIx`
02 确定诊断的类型(正常或者制造)。如果键盘缓冲器含有数据就会失效。 停用不可屏蔽中断;通过延迟开始。 CMOS写入/读出正在进行或者失灵。 k_/a
03 清除8042键盘控制器,发出TEST-KBRD命令(AAH)。 通电延迟已完成。 ROM B10S检查部件正在进行或失灵。 LvK
04 使8042键盘控制器复位,核实TESTKBRD。 键盘控制器较复位/通电测试。 可编程间隔计时器的测试正在进行或失灵。 [
05 如果不断重复制造测试1至5,可获得8042控状态。 已确定软复位/通电;即将启动ROM。 DMA初始准备正在进行或者失灵。 ct
06 使电路片作初始准备,停用视频,奇偶性,DMA电路片,以及清除DMA电路片,所有页面寄存器和CMOS停机字节。使电路片作初始准备,停用视频,奇偶性,DMA电路片,以及清除DMA电路片,所有页面寄存器和CMOS停机字节。 已启动ROM计算ROM BIOS检查总和,以及检查键盘缓冲器是否清除。 DMA初始页面寄存器读/写测试正在进行或失灵。 V9*
07 处理器测试2,核实CPU寄存器的工作。 ROM BIOS检查总和正常,键盘缓冲器已清除,向键盘发出BAT(基本保证测试)命令。 无意义 uWfC$
08 使CMOS计时器作初始准备,正常地更新计时器的循环。 已向键盘发出BAT命令,即将写入BAT命令。 RAM更新检验正在进行或失灵。 c'2^
09 EPROM检查总和且必须等于零才通过。 核实键盘的基本保证测试,接着核实键盘命令字节。 第一个64K RAM测试正在进行。 @
0A 使视频接口作初始准备。 发出键盘命令字节代码,即将写入命令字节数据。 第一个64K RAM芯片或数据线失灵,移位。 aM?cV$
0B 测试8254通道0。 写入键盘控制器命令字节,即将发出引脚23和24的封锁/解锁命令。 第一个64K RAM奇/偶逻辑失灵。 A|YS
0C 测试8054通道1。 键盘控制器引脚23,24已封锁/解锁;已发出NOP命令。 第一个64K RAM的地址线故障。 Jixy'
0D 1.检查CPU速度是否与系统时钟相匹配。2.检查控制芯片已编程值是否条符合初设置。3.视频通道测试,如果失败,则鸣喇叭。 已处理NOP命令;接着测试CMOS停开寄存器。 第一个64K RAM的奇偶性失灵。 /^;U;
0E 测试CMOS停机字节。 CMOS停开寄存器读/写测试;将计算CMOS检查总和。 初始货输入/输出端口地址。 Ej Ib
0F 测试扩展的CMOS。 已计算CMOS检查总和写入诊断字节;CMOS开始初始准备。 无意义。 n
10 测试DMA通道0。 CMOS已作初始准备,CMOS状态寄存器即将为日期和时间作初始准备。 第一个64K RAM第0位故障。 Vl2NJ
11 测试DMA通道1。 COMS状态寄存器已作初始准备,即将停用DMA和中断控制器。 第一个64K RAM第1位故障。 Vg*L:%
12 测试DMA页面寄存器。 停用DMA控制器1以及中断控制器1和2;即将视频显示器并使端口B作初始准备。 第一个64K RAM第2位故障。 Q'
13 测试8471键盘控制器接口。 视频显示器已停用,端口B已作初始准备;即将开始电路片初始化/存储器自动检测。 第一个64K RAM第3位故障。 :
14 测试存储器更新触发电路。 电路片初始化/存储器自动检测结束;8254计时器测试即将开始。 第一个64K RAM第4位故障。 E_J
15 测试开头64K的系统存储器。 第2通道计时器测试了一半;8254第2通道计时器即将完成测试。 第一个64K RAM第5位故障。 *=wG
16 建立8259所用的中断矢量表。 第2通道计时器测试结束;8254第1通道计时器即将完成测试。 第一个64K RAM第6位故障。 ,E4^o
17 调准视频输入/输出工作,若装有视频BIOS则启用。 第1通道计时器测试结束;8254第0通道即将完成测试。 第一个64K RAM第7位故障。 KW0/
18 测试视频存储器,如果安装选用的视频BIOS通过,则可绕过。 第0通道计时器测试结束;即将开始更新存储器。 第一个64K RAM第8位故障。 oPh
19 测试第1通道的中断控制器(8259)屏蔽位。 已开始更新存储器,接着将完成存储器的更新。 第一个64K RAM第9位故障。 ]`}g*E
1A 测试第2通道的中断控制器(8259)屏蔽位。 正在触发存储器更新线路,即将检查15微秒通/断时间。 第一个64K RAM第10位故障。 '"XVGR
1B 测方式CMOS电池电平。 完成存储器更新时间30微秒测试;即将开始基本的64K存储器测试。 第一个64K RAM第11位故障。 =7IGYt
1C 测试COMS检查总和。 无意义。 第一个64K RAM第12位故障。 R
1D 调定COMS的配置。 无意义。 第一个64K RAM第13位故障。 _
1E 测定系统存储器的大小,并且把客观存在和COMS值比较。 无意义。 第一个64K RAM第14位故障。 =
1F 测试64K存储器至最高640K。 无意义。 第一个64K RAM第15位故障。 "NO
20 测量固定的8259中断位。 开始基本的64K存储器测试;即将测试地址线。 从属DMA寄存器测试正在进行或失灵。 3^sH
21 维持不可屏蔽中断(NMI)位(奇偶性或输入/输出通道的检查)。 通过地址线测试;即将触发奇偶性。 主DMA寄存器测试正在进行或失灵。 8ZG#g
22 测试8259的中断功能。 结束触发奇偶性;将开始串行数据读/写测试。 主中断屏蔽寄存器正在进行或失灵。 Vm'(
23 测试保护方式8086虚似方式和8186页面方式。 基本的64K串行数据读/写测试正常;即将开始中断矢量初始化之前的任何调节。 从属中断屏蔽寄存器测试正在进行或失灵。 l{Ug4
24 测定1Mb以上的扩展存储器。 矢量初始化之前的任何调节完成,即将开始中断矢量的初始准备。 设置ES段地址寄存器注册表到内存高端。 jXU
25 测试除头一个64K之后的所有存储器。 完成中断矢量初始准备;将为旋转武断续开始读出8042的输入/输出端口。 装入中断矢量正在进行或失灵。 X2I
26 测试保护方式的例外情况。 读写8042的输入/输出端口;即将为旋转式断续开始使全局数据作初始准备。 开启A20地址线;使之参入寻址。 2L-
27 确定超高速缓冲存储器的控制或屏蔽RAM。 全1数据初始准备结束;接着将进行中断矢量之后的任何初始准备。 键盘控制器测试正在进行或失灵。 "`KN
28 确定超高速缓冲存储器的控制或者特别的8042键盘控制器。 完成中断矢量之后的初始准备;即将调定单色广式。 CMOS电源故障/检查总和计算正在进行。 (?Wnpd
29 无意义。 已调定单色方式,即将调定彩色方式。 CMOS配置有效性的检查正在进行。 7
2A 使键盘控制器作初始准备。 已调定彩色方式,即将进行ROM测试前的触发奇偶性。 置空64K基本内存。 S2"f
2B 使磁盘驱动器和控制器作初始准备。 触发奇偶性结束;即将控制任选的视频ROM检查前所需的任何调节。 屏幕存储器测试正在进行或失灵。 73=2
2C 检查串行端口,并使之作初始准备。 完成视频ROM控制之前的处理;即将查看任选的视频ROM并加以控制。 屏幕初始准备正在进行或失灵。 tArEg'
2D 检查并行串口,并使之做初始准备。 以完成任选的视频ROM控制,即将进行视频ROM回复控制之后任何其他处理的控制。 屏幕回扫测试正在进行或失灵。 +\KqX
2E 使磁盘驱动器和控制器作初始准备。 使视频ROM控制之后的处理复原;如果没发现EGA/VGA就要进行显示存储器读写测试。 检查视频ROM正在进行。 D{i
2F 检测数学协处理器,并使之做初始准备。 没发现EGA/VGA;即将开始显示存储器读/写测试。 无意义。 DPSA-
30 建立基本内存和扩展内存。 通过显示存储器读/写测试;即将进行扫描检查。 认为屏幕是可以工作的。 AD$(F
31 检测从C800:0至EFFF:0的选用ROM,并使之做处世准备。 显示存储器读/写测试失败,即将进行另一种显示存储器读/写测试。 单色监视器是可以工作的。 g
32 对主板上的COM/LTP/FDD/声音设备等I/O芯片编程使之适合设置值。 通过另一种显示存储器读/写测试;即将进行另一种显示器扫描检查。 彩色监视器(40列)是可以工作的。 z2%
33 无意义。 视频显示器检查结束;将开始利用调节开关和实际插卡检验显示器的类型。 彩色监视器(80列)是可以工作的。 n~9Z~C
34 无意义。 已检验显示适配器;接着将调定显示方式。 记时器滴答声中断测试正在进行或失灵。 U)^hot
35 无意义。 完成调定显示方式;即将检查BIOS ROM的数据区。 停机检测正在进行或失灵。 \
36 无意义。 已检查BIOS ROM数据区;即将调定通电信息的游标。 门电路中A—20失灵。 H#^ivF
37 无意义。 识别通电信息的游标调定已完成;即将显示通电信息。 保护方式中的意外中断。 h;?B
38 无意义。 完成显示通电信息;即将读出新的游标位置。 RAM测试正在进行或者地址故障FFFFh。 )`
39 无意义。 己读出保存游标位置,即将显示引用信息串。 无意义。 R
3A 无意义。 引用信息串显示结束;即将显示发现(ESC)信息。引用信息串显示结束;即将显示发现信息。 间隔计时器通道2测试或失灵。 D
3B 用OPT电路片(只是486)使辅助超高速缓冲存储器作初始准备。 已显示发现信息:虚拟方式,存储器测试即将开始。 按日计算的日历时钟测试正在进行或失灵。 ^D( UA
3C 建立允许进入CMOS设置的标志。 无意义。 串行端口测试正在进行或失灵。 agiV\
3D 初女台化键盘/PS2鼠标/PNP设备及总内存节点。 无意义。 并行端口测试正在进行或失灵。 AY
3E 尝试打开L2高速缓存。 无意义。 数学处理器测试正在进行或失灵。 ``})
3F 无意义。 无意义。 无意义。 ,R_
40 无意义。 已开始准备虚拟方式的测试;即将从视频存储器来检验。 调整CPU速度,使之外围时钟精确匹配。 G`\
41 中断己打开,将初始化数据以便于0:0检测内存变换(中断控制器或内存不良)。 从视频存储器检验之后复原;即将准备描述符表。 系统插件板选择失灵。 |
42 显示窗口进入SETUP。 描述符表已准备好;即将进行虚拟方式作存储器测试。 扩展CMOS RAM故障。 n
43 若是即插即用BIOS,则串口,并口初始化。 进入虚拟方式;即将为诊断方式实现中断。 无意义。 dfm
44 无意义。 已实现中断(如已接通诊断开关;即将使数据作初始准备以检查存储器在0:0返转。 BIOS中断进行初始化。 Lm
45 初始化数学处理器。 数据已作初始准备;即将检查存储器在0:0返转以及找出系统存储器的规模。 无意义。 GQzx,
46 无意义。 测试存储器已返回;存储器大小计算完毕,即将写入页面来测试存储器。 检查只读存储器ROM版本。 }2Vc2
47 无意义。 即将在扩展的存储器试写页面;即将基本640K存储器写入页面。 无意义。 |wy
48 无意义。 已将基本存储器写入页面;即将确定1Mb以上的存储器。 视频检查,CMOS重新配置。 O-
49 无意义。 找出1Mb以下的存储器并检验;即将确定1Mb以上的存储器。 无意义。 YYTg
4A 无意义。 找出1Mb以上的存储器并检验:即将检查BIOS ROM的数据区。 进行视频的初始化。 BcO8@?
4B 无意义。 BIOS ROM数据区的检验结束,即将检查和为软复位清除1Mb以上的存储器。 无意义。 ;K
4C 无意义。 清除1Mb以上的存储器(软复位)即将清除1Mb以上的存储器。 屏蔽视频BIOS ROM。 BXIo
4D 无意义。 已清除1Mb以上的存储器(软复位);将保存存储器的大小。 无意义。 "G?87
4E 若检测到有错误,在显示器上显示错误信息,并等待客户按(F1)健继续。 开始存储器的测试:(无软复位);即将显示第一个64K存储器的测试。 显示版权信息。 K
4F 读写软、硬盘数据,进行DOS引导。 开始显示存储器的大小,正在测试存储器将使之更新;将进行串行和随机的存储器测试。 无意义。 K(m
50 将当前BIOS临时区内的CMOS值存到CMOS中。 完成1Mb以下的存储器测试;即将高速存储器的大小以便再定位和掩蔽。 将CPU类型和速度送到屏幕。 =
51 无意义。 测试1Mb以上的存储器。 无意义。 y}
52 所有ISA只读存储器ROM进行初始化,最终给PCI分配IRQ号等初始化工作。 已完成1Mb以上的存储器测试;即将准备回到实址方式。 进入键盘检测。 ]^
53 如果不是即插即用BIOS,则初始化串口、并口和设置时钟值。 保存CPU寄存器和存储器的大小,将进入实址方式。 无意义。 Z
54 无意义。 成功地开启实址方式;即将复原准备停机时保存的寄存器。 扫描“打击键”。 'EP
55 无意义。 寄存器已复原,将停用门电路A—20的地址线。 无意义。 7
56 无意义。 成功地停用A—20的地址线;即将检查BIOS ROM数据区。 键盘测试结束。 Z?P'
57 无意义。 BIOS ROM的数据区检查了一半;继续进行。 无意义。 S]
58 无意义。 BIOS ROM的数据区检查结束;将清除发现信息。 非设置中断测试。 ;W)_
59 无意义。 已清除信息;信息已显示;即将开始DMA和中断控制器的测试。 无意义。 6\
5A 无意义。 无意义。 显示按“F2”键进行设置。 ec
5B 无意义。 无意义。 测试基本内存地址线。 Vo]v(
5C 无意义。 无意义。 测试640K基本内存。 %_]E;
5D 无意义。 无意义。 无意义。 Y
5E 无意义。 无意义。 无意义。 L-@0X
5F 无意义。 无意义。 无意义。 jXe[W
60 设置硬盘引导扇区病毒保护功能。 通过DMA页面寄存器的测试;即将检验视频存储器。 测试扩展内存。 ||tl
61 显示系统配置表。 视频存储器检验结束;即将进行DMA#l基本寄存器的测试。 无意义。 Dj*
62 开始用中断19H进行系统引导。 通过DMA#l基本寄存器的测试;即将进行DMA#2寄存器的测试。 测试扩展内存地址线。 ?l
63 无意义。 通过DMA#2基本寄存器的测试;即将检查BIOS ROM数据区。 无意义。 UIaYR
64 无意义。 BIOS ROM数据区检查了一半,继续进行。 无意义。 l
65 无意义。 BIOS ROM数据区检查结束;将把DMA装置1和2编程。 无意义。 vM(
66 无意义。 DMA装置1和2编程结束;即将使用59号中断控制器作初始准备。 Cache注册表进行优化配置。 A%
67 无意义。 8259初始准备已结束;即将开始键盘测试。 无意义。 7.F9rh
68 无意义。 无意义。 使外部Cache和CPU内部Caehe都工作。 .R k
69 无意义。 无意义。 无意义。 6N
6A 无意义。 无意义。 测试并显示外部Cache值。 kD-w1%
6B 无意义。 无意义。 无意义。 VvAVt
6C 无意义。 无意义。 显示被屏蔽内容。 J!;V
6D 无意义。 无意义。 无意义。 \x~d'
6E 无意义。 无意义。 显示附属配置信息。 1(
6F 无意义。 无意义。 无意义。 \YYp
70 无意义。 无意义。 检测到的错误代码送到屏幕显示。 d8?kO5
71 无意义。 无意义。 无意义。 ]223}
72 无意义。 无意义。 检测配置有否错误。 WB
73 无意义。 无意义。 无意义。 23~Y/
74 无意义。 无意义。 测试实时时钟。 ABU~{
75 无意义。 无意义。 无意义。 f_di0
76 无意义。 无意义。 扫查键盘错误。 (?
77 无意义。 无意义。 无意义。 N:Xtm
78 无意义。 无意义。 无意义。 Rw_
79 无意义。 无意义。 无意义。 @Y\H
7A 无意义。 无意义。 锁键盘。 :]sBG*
7B 无意义。 无意义。 无意义。 7*%NA
7C 无意义。 无意义。 设置硬件中断矢量。 ;i_ybl
7D 无意义。 无意义。 无意义。 \TMq
7E 无意义。 无意义。 测试有否安装数学处理器。 %
7F 无意义。 无意义。 无意义。 fVzKkH
80 无意义。 键盘测试开始,正在清除和检查有没有键卡住,即将使键盘复原。 关闭可编程输入/输出设备。 d:v
81 无意义。 找出键盘复原的错误卡住的健;即将发出键盘控制端口的测试命令。 无意义。 z^
82 无意义。 键盘控制器接口测试结束,即将写入命令字节和使循环缓冲器作初始准备。 检测和安装固定RS232接口(串口)。 l9Tg:
83 无意义。 已写入命令字节,已完成全局数据的初始准备;即将检查有没有键锁住。 无意义。 +
84 无意义。 已检查有没有锁住的键,即将检查存储器是否CMOS失配。 检测和安装固定并行口。 ,r
85 无意义。 已检查存储器的大小;即将显示软错误和口令或旁通安排。 无意义。 *Z#G
86 无意义。 已检查口令:即将进行旁通安排的编程。 重新打开可编程I/O设备和、检测固定I/O是否有冲突。 L;#w
87 无意义。 完成安排前的编程,将进行CMOS安排的编程。 无意义。 sx2Yfj
88 无意义。 从CMOS安排程序复原清除屏幕;即将进行后面的编程。 初始化BIOS数据区。 zh
89 无意义。 完成安排后的编程;即将显示通电屏幕信息。 无意义。 FA
8A 无意义。 显示头一个屏幕信息。 进行扩展BIOS数据区初始化。 P|l-KI
8B 无意义。 显示了信息:即将屏蔽主要和视频BIOS。 无意义。 t"+xp
8C 无意义。 成功地屏蔽主要和视频BIOS,将开始CMOS后的安排任选项的编程。 进行软驱控制器初始化。 %a#NJ
无意义。 已经安排任选项编程接着检查滑鼠和进行初始准备。 无意义。 Id!W5
8E 无意义。 检查了滑鼠标以及完成初始准备;即将把硬、软磁盘复位。 无意义。 wcF%
8F 无意义。 软磁盘已检查,该磁碟将作初始准备,随后想备软磁碟。 无意义。 E@#$
90 无意义。 软磁碟配置结束;将测试硬磁碟的存在。 硬盘控制器进行初始化。 B(
91 无意义。 硬磁碟存在测试结束;随后配置硬磁碟。 局部总线硬盘控制器初始化。 ?q+*
92 无意义。 硬磁碟配置完成;即将检查BIOS ROM的数据区。 跳转到用户路径2。 SB\1,}
93 无意义。 BIOS ROM的数据区已检查一半;继续进行。 无意义。 N\y
94 无意义。 BIOS ROM的数据区检查完毕,即调定基本和扩展存储器的大小。 关闭A20地址线。 Y=YY
95 无意义。 因应滑鼠和硬磁碟47型支持而调节好存储器的大小;即将检验显示存储器。 无意义。 G^
96 无意义。 检验显示存储器后复原;即将进行C800:0任选ROM控制之前的初始准备。 “ES段”注册表清除。 p4*~S#
97 无意义。 C800:0任选ROM控制之前的任何初始准备结束,接着进行任选ROM的检查及控制。 无意义。 V80
98 无意义。 任选ROM的控制完成;即将进行任选ROM回复控制之后所需的任何处理。 查找ROM选择。 ^Z9B
99 无意义。 任选ROM测试之后所需的任何初始准备结束;即将建立计时器的数据区或打印机基本地址。 无意义。 Yi+Q
9A 无意义。 调定计时器和打印基本地址后的返回操作;即将调定RS—232基本地址。 屏蔽ROM选择。 /'-
9B 无意义。 在RS—232基本地址之后返回;即将进行协处理器测试之初始准备。 无意义。 XDO5
9C 无意义。 协处理器测试之前所需—初始准备结束;接着使协处理器作初始准备。 建立电源节能管理。 tm}\
9D 无意义。 协处理器作好初始准备,即将进行协处理器测试之后的任何初始准备。 无意义。 [fH U
9E 无意义。 完成协处理器之后的初始准备,将检查扩展键盘,键盘识别符,以及数字锁定。 开放硬件中断。 2]}{EM
9F 无意义。 已检查扩展键盘,调定识别标志,数字锁接通或断开,将发出键盘识别命令。 无意义。 ?
A0 无意义。 发出键盘识别命令:即将使键盘识别标志复原。 设置时间和日期。 }r
A1 无意义。 键盘识别标志复原;接着进行高速缓冲存储器的测试。 无意义。 P$KkVi
A2 无意义。 高速缓冲存储器测试结束;即将显示任何软错误。 检查键盘锁。 ZZ
A3 无意义。 软错误显示完毕;即将调定键盘打击的速率。 无意义。 9
A4 无意义。 调好键盘的打击速率,即将制订存储器的等待状态。 键盘重复输入速率的初始化。 E
A5 无意义。 存储器等候状态制定完毕;接着将清除屏幕。 无意义。 2 x@
A6 无意义。 屏幕已清除;即将启动奇偶性和不可屏蔽中断。 无意义。 *8M
A7 无意义。 已启用不可屏蔽中断和奇偶性;即将进行控制任选ROM在E000:0之所需的任何初始准备。 无意义。 w|BDd
A8 无意义。 控制ROM在E000:0之前的初始准备结束,接着将控制E000:0之所需的任何初始准备。 清除“F2”键提示。 3
A9 无意义。 从控制E000:0 ROM返回,即将进行控制E000:0任选ROM之后所需的任何初始准备。 无意义。 B%
AA 无意义。 在E000:0控制任选ROM之后的初始准备结束;即将显示系统的配置。 扫描“F2”键打击。 I! -'W
AB 无意义。 无意义。 无意义。 ~w"
AC 无意义。 无意义。 进入设置。 -07sz
AD 无意义。 无意义。 无意义。 )6O,1
AE 无意义。 无意义。 清除通电自检标志。 h,\uIB
AF 无意义。 无意义。 无意义。 9JyEZa
B0 无意义。 无意义。 检查非关键性错误。 RTx
B1 无意义。 无意义。 无意义。 F(^Ao{
B2 无意义。 无意义。 通电自检完成准备进入操作系统引导。 EQ7;
B3 无意义。 无意义。 无意义。 :j%
B4 无意义。 无意义。 蜂鸣器响一声。 TdJR
B5 无意义。 无意义。 无意义。 Z
B6 无意义。 无意义。 检测密码设置(可选)。 K#R!
B7 无意义。 无意义。 无意义。 |Q
B8 无意义。 无意义。 清除全部描述表。 s
B9 无意义。 无意义。 无意义。 nWk,D
BA 无意义。 无意义。 无意义。 0Pki\
BB 无意义。 无意义。 无意义。 ED
BC 无意义。 无意义。 清除校验检查值。 1`/
BD 无意义。 无意义。 无意义。 ~W
BE 程序缺省值进入控制芯片,符合可调制二进制缺省值表。 无意义。 清除屏幕(可选)。 o]
BF 测试CMOS建立值。 无意义。 检测病毒,提示做资料备份。 ppyS(m
C0 初始化高速缓存。 无意义。 用中断19试引导。 G`LO:K
C1 内存自检。 无意义。 查找引导扇区中的“55”“AA”标记。 Jz y,
C2 无意义。 无意义。 无意义。 "
C3 第一个256K内存测试。 无意义。 无意义。 ]_
C4 无意义。 无意义。 无意义。 mA
C5 从ROM内复制BIOS进行快速自检。 无意义。 无意义。 :L=fW,
C6 高速缓存自检。 无意义。 无意义。 (uD
C7 无意义。 无意义。 无意义。 .B
C8 无意义。 无意义。 无意义。 6#d
C9 无意义。 无意义。 无意义。 .
CA 检测Micronies超高速缓冲存储器(如果存在),并使之作初始准备。 无意义。 无意义。 aIgZ
CB 无意义。 无意义。 无意义。 oM@
CC 关断不可屏蔽中断处理器。 无意义。 无意义。 wxcj8
CD 无意义。 无意义。 无意义。 e7='
CE 无意义。 无意义。 无意义。 OjM'cO
CF 无意义。 无意义。 无意义。 Adm
D0 无意义。 无意义。 无意义。 1:
D1 无意义。 无意义。 无意义。 c3]Z/g
D2 无意义。 无意义。 无意义。 C
D3 无意义。 无意义。 无意义。 %^
D4 无意义。 无意义。 无意义。 FR
D5 无意义。 无意义。 无意义。 n 'b
D6 无意义。 无意义。 无意义。 #LxH2
D7 无意义。 无意义。 无意义。 nHR^
D8 无意义。 无意义。 无意义。 W+^
D9 无意义。 无意义。 无意义。 Aie
DA 无意义。 无意义。 无意义。 -P
DB 无意义。 无意义。 无意义。 d'k$
DC 无意义。 无意义。 无意义。 b|
DD 无意义。 无意义。 无意义。 ]]
DE 无意义。 无意义。 无意义。 }mL)v
DF 无意义。 无意义。 无意义。 Fi
E0 无意义。 无意义。 无意义。 aCT
E1 无意义。 无意义。 无意义。 #Zu
E2 无意义。 无意义。 无意义。 m##vV
E3 无意义。 无意义。 无意义。 UD#
E4 无意义。 无意义。 无意义。 e
E5 无意义。 无意义。 无意义。 1il
E6 无意义。 无意义。 无意义。 s
E7 无意义。 无意义。 无意义。 f-
E8 无意义。 无意义。 无意义。 7`E
E9 无意义。 无意义。 无意义。 LyAMxi
EA 无意义。 无意义。 无意义。 Nr
EB 无意义。 无意义。 无意义。 C5{
EC 无意义。 无意义。 无意义。 i@rP
ED 无意义。 无意义。 无意义。 a8XfU
EE 处理器意料不到的例外情况。 无意义。 无意义。 $0DK
EF 无意义。 无意义。 无意义。 @X
F0 无意义。 无意义。 无意义。 0eiUaY
F1 无意义。 无意义。 无意义。 8@
F2 无意义。 无意义。 无意义。 )c)
F3 无意义。 无意义。 无意义。 ?
F4 无意义。 无意义。 无意义。 ?Xg
F5 无意义。 无意义。 无意义。 ~
F6 无意义。 无意义。 无意义。 avi2i
F7 无意义。 无意义。 无意义。 G0
F8 无意义。 无意义。 无意义。 )|Uc
F9 无意义。 无意义。 无意义。 ?}z
FA 无意义。 无意义。 无意义。 E
FB 无意义。 无意义。 无意义。 LAqMx
FC 无意义。 无意义。 无意义。 cY)p,
FD 无意义。 无意义。 无意义。 3Y_}!*
FE 无意义。 无意义。 无意义。 jOH
FF 给予INT19引导装入程序的控制,主板OK。(见特殊代码意义) (见特殊代码意义) (见特殊代码意义) YdE!S=
特殊代码“00”、“FF”及其它起始码有三种情况出现: 14
1、已由一系列其它代码出现之后再出现“00”或“FF”,则主板OK。'l
2、如果CMOS中设置无错误,则不严重的故障不会影响BIOS自检的继续,而最终出现“00”或“FF”。/cY
3、一开机就出现“00”或“FF”或其它起始代码并且不变化,则为主板没有运行起来。 Pe\V*

