也谈硬盘参数测试t2gg_第1页
也谈硬盘参数测试t2gg_第2页
也谈硬盘参数测试t2gg_第3页
也谈硬盘参数测试t2gg_第4页
也谈硬盘参数测试t2gg_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1/11也谈硬盘参数测试T2GG计算机世界月刊1995年第八期上刊登了李宇先生的一篇文章,介绍了测试PC机软硬盘参数的方法。文中介绍的读取硬盘参数的方法是通过读取并分析硬盘主引导记录MASTERBOOTRECORD来取得硬盘信息的。此方法适用范围比较广。事实上由于现在很多PC都使用IDE型的硬盘,因此,我们也可以通过直接编程IDE控制器的方法获得硬盘参数。下面简单介绍一下这个方法,并给出一个汇编程序供大家参考。IDEINTEGRATEDDRIVEELECTRONICS有时也被称为ATAPI型控制器。此种控制器速度快,集成度高,在PC机中应用广泛。我们可以通过一些IDE控制命令来完成硬盘的读/写/校验等各种操作。本文仅介绍其中的硬盘测试命令0ECH。表1列出了IDE控制器的端口寄存器分配及功能,其中“主状态寄存器“1F7H的各位定义如表2。表1IDE端口寄存器地址及功能表2“硬盘控制寄存器“3F6H各位定义如表3。表3输出IDE控制命令可采用下列步骤1向端口3F6H写入控制字节,建立相应的硬盘控制方式2检验控制器和驱动器的状态通过检测端口1F7H的2/11B7、B6两位,若控制器空闲且驱动器就绪,即可输出命令3完整地输出7B长的命令块,依次写入端口1F1H1F7H,不论是否需要,端口1F1H1F6H对应的前6B参数必须输出,端口1F7H输出命令码0ECH4检测端口1F7H的B7、B3位,若控制器空闲且B3置1,表示操作结束,即可读取结果5通过端口1F0H独取100H字至缓冲区6再次读取端口1F7H,判断B0位是否为0,若B00,表示命令成功,否则表示命令失败,转至错误处理7通过表4所示的偏移量,读取我们所需的信息并转换成可显示的信息。表4源程序如下。MODELSMALL286DATACOPYDBIDEHARDDRIVEIDENTIFYPROGRAM,0DH,0AHDBCOPYRIGHTC199BYLICHUNSHENG,0DH,0AHDBALLRIGHTSRESERVEDDB0DH,0AH,0AH,MODELNUMBERIOFMDW14HDUP2020HDB0DH,0AH,FIRMWAREREVISION3/11DWDUP2020HDB0DH,0AH,SERIALNUMBERDW0AHDUP2020HDB0AHDB0DH,0AH,CYLINDERSNOFCDBDUP20HDB0DH,0AH,HEADSDBDUP20HDB0DH,0AH,SECTORSPERTRACKDBDUP20HDB0DH,0AH,BYTESPERTRACKDBDUP20HDB0DH,0AH,BYTESPERSECTORDBDUP20HDB0DH,0AH,BUFFERSIZEKBDBDUP20HDB0DH,0AH,ECCBYTESDBDUP20HDB0DH,0AH,DRIVECAPACITYDBDUP20HDBMB,24HADDRDB,6,12,8,10,42,444/11ADDR1DW6H,14H,2EH,04H,14H,0AHCMDDB0,0,0,0,0,0,0ECHHDINFODW100HDUPTOMSGDBTIMEOUTOFRANGE,0DH,0AH,24HERRMSGDBERROR,0DH,0AH,24HCODEDEC160PROCPUSHDIPUSHDXPUSHCXPUSHAXMOVAL,20HSTDCMPDX,9999JADLOOPSTOSBCMPDX,999JADLOOPSTOSBCMPDX,99JADLOOPSTOSB5/11CMPDX,9JADLOOPSTOSBDLOOPMOVAX,DXMOVDX,0MOVCX,10DIVCXXCHGAX,DXADDAL,30HSTOSBCMPDX,0JNZDLOOPPOPAXPOPCXPOPDXPOPDICLDRETDEC160ENDPMAINPROCMOVAX,DATAMOVDS,AX6/11MOVES,AXMLOOP1MOVCX,0MOVDX,1F7HMLOOP2INAL,DXANDAL,11000000BCMPAL,01000000BJZDRDYLOOPMLOOP2JMPTIMEOUTDRDYMOVAL,0MOVDX,3F6HOUTDX,ALMOVSI,OFFSETCMDMOVAL,BYTEPTRANDAL,1MOVCL,4SHLAL,CLORAL,0A0HMOVBYTEPTR,ALMOVDX,1F1HMOVCX,77/11MLOOP3LODSBOUTDX,ALINCDXLOOPMLOOP3DECDXXORCX,CXMLOOP4INAL,DXANDAL,10001000BCMPAL,00001000BJZREADDATALOOPMLOOP4JMPTIMEOUTREADDATACLICLDMOVDX,1F0HMOVDI,OFFSETHDINFOMOVCX,100HREPZINSWSTI8/11MOVDX,1F7HINAL,DXANDAL,71HXORAL,50HJNZERRENDMOVSI,OFFSETADDRMOVDI,OFFSETNOFCADDDI,4MOVBH,0MOVCX,7MLOOP6MOVBL,BYTEPTRMOVDX,WORDPTRCALLDEC160INCSIADDDI,28LOOPMLOOP6MOVAX,1MOVSI,OFFSETADDRMOVCX,3MLOOP7MOVBL,BYTEPTR9/11MULWORDPTRINCSILOOPMLOOP7MOVBX,2048DIVBXMOVDX,AXCALLDEC160MOVBX,OFFSETHDINFOMOVSI,OFFSETADDR1MOVDI,OFFSETIOFMMOVCX,3MLOOP8PUSHCXPUSHBXADDBX,MOVCX,ADDSI,4MLOOP9MOVAX,WORDPTRXCHGAH,A1STOSBMOVAL,AHSTOSB10/11ADDBX,2LOOPMLOOP9POPBXPOPCXADDDI,23LOOPMLOOP8MOVDX,OFFSET

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论