博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
int 15h
阅读量:5056 次
发布时间:2019-06-12

本文共 499 字,大约阅读时间需要 1 分钟。

int 15h

ax=0e820h 用来获取内存信息
ebx=0 int 15h每次会設它的值,来继续找下一个ARDS,我们要在首次调用是置0,以后注意不要对它操作。
es:di int 15h会返回ARDS到es:di,所以我们要每次设定好,以使ARDS保存在我们想要保存的地方
ecx=20  有些bios会根据ecx的值来填充es:di,有些则默认填充20,所以统一起见ecx=20
edx=0534d4150h bios会使用此值来对信息校验
设定好上述值然后调用中断就可以了
如果我们想读出所有的内存信息只要通过循环每次di+20就可以,为了判断信息结束,要判断cf是否为1并且ebx=0.
ARDS是一个数据结构,存储着一块地址的信息。
它的结构如下
偏移        意义
0        基地址低32位
4        基地址高32位
8        长度低32位
12        长度低32位
16        类型                类型取值1表示可用ram    2表示正被使用或被保留,os不能使用。
总是感觉表达不太好,可能还不太了解吧

转载于:https://www.cnblogs.com/Jinux/archive/2012/04/10/2440730.html

你可能感兴趣的文章
第十四周总结Access
查看>>
Java开发笔记(一百零二)信号量的请求与释放
查看>>
python3 生成器与迭代器
查看>>
java编写提升性能的代码
查看>>
ios封装静态库技巧两则
查看>>
Educational Codeforces Round 46 (Rated for Div. 2)
查看>>
Abstract Factory Pattern
查看>>
Cocos2d-x 3.0final 终结者系列教程10-画图节点Node中的Action
查看>>
简单理解kafka---核心概念
查看>>
assert用法
查看>>
ajaxFileUpload.js 上传后返回的数据不正确 -- clwu
查看>>
扒一扒spring,dom4j实现模拟实现读取xml
查看>>
公司培训lesson 1-代码质量
查看>>
JavaScript 仿LightBox内容显示效果
查看>>
python 字符串处理
查看>>
Do it early, do it often, do it automatically (转)
查看>>
Linux curl使用简单介绍
查看>>
CSDN可以直接扣扣登录.....如需查看我的博客去CSDN
查看>>
App弱网测试方式
查看>>
PHP zendstudio framework2配置过程
查看>>