Linux下汇编学习笔记之三--(Professional Assembly Language)
来源:互联网 发布:java连接数据库步骤为 编辑:程序博客网 时间:2024/05/01 22:50
笔记之三主要介绍协处理器FPU
以前每次碰到浮点指令的时候,头就大了。可这一次就不同了,越看越简单,哇,太开心了。。。
1、FPU与标准处理器寄存器分离的一组寄存器处理浮点操作,即FPU与我们通常概念中的中央处理器是独立的。FPU包括8个80位数据寄存器和3个16位寄存器,称为控制、状态和标记寄存器。FPU的数据寄存器R0到R7构成循环堆栈。(第一次遇到循环堆栈这种数据结构)
2、状态寄存器fstat 默认值是0x0000
位0 :非法操作异常标志
位1 :非规格化操作数异常标志
位2 :除数为零异常标志
位3 :溢出异常标志
位4 :下溢异常标志
位5 :精度异常标志
位6:堆栈错误
位7:错误汇总状态
位8:条件代码位0(c0)
位9:条件代码位1(c1)
位10:条件代码位2(c2)
位11位12位13:堆栈顶部指针
位14:条件代码位3(c3)
位15:FPU繁忙标志
使用fstsw把fstat读到一个双字节内存或AX中。
3、控制寄存器 fctrl
位0 :非法操作异常掩码
位1 :非规格化操作数异常掩码
位2 :除数为零异常掩码
位3 :溢出异常掩码
位4 :下溢异常掩码
位5 :精度异常掩码
位6位7:保留
位8位9:精度控制(00单精度10双精度11扩展双精度)
位10位11:舍入控制(00最近值01向下舍入10向上舍入11向零舍入)
位12:无穷大控制
位13位14位15:保留
- Linux下汇编学习笔记之三--(Professional Assembly Language)
- 一本不错的汇编书籍《Professional Assembly Language》
- Professional Assembly Language
- Professional.Assembly.Language
- [汇编学习笔记]if/else,while,for,switch in Assembly Language
- Professional Assembly Language (Programmer to Programmer)
- 汇编(The art of assembly language)
- 汇编语言(Assembly Language)笔记
- Using Assembly Language in Linux
- Using Assembly Language in Linux
- Using Assembly Language in Linux
- linux下汇编学习笔记[第一天]
- 'Professional Assembly Language' is a nice book about Intel_AT&T
- 《Professional assembly language》这本书主要讲的内容
- Professional Assembly Language 十二章系统调用例子for mac
- 【Linux学习笔记】Linux C中内联汇编的语法格式及使用方法(Inline Assembly in Linux C)
- 【Linux学习笔记】Linux C中内联汇编的语法格式及使用方法(Inline Assembly in Linux C)
- 【Linux学习笔记】Linux C中内联汇编的语法格式及使用方法(Inline Assembly in Linux C)
- (讨论)到底该不该给老人让座?
- FutureWindow uploading...
- GOOGLE服务列表
- 编程修养
- java 事务处理
- Linux下汇编学习笔记之三--(Professional Assembly Language)
- 一步一步尝试在MFC下开发基于winpcap的数据包捕获和分析软件(之二)
- 宣言
- 保证你现在和未来不失业的十种关键技术
- sharepoint potal server 开发 webpart中, toolpart用模态对话框传参
- 创建你的第一个带有窗口的Windows程序
- 杂七杂八
- 使用JavaScript实现控件拖动
- 使用JavaScript实现动态改变控件大小