`
lobin
  • 浏览: 427239 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论
阅读更多

 

 

寄存器

 

标志寄存器

EFLAGS Register


EFLAGS寄存器不像其他寄存器那样可以直接操作,只能通过相关指令去修改其中的标志位。

在Bochs中,可以在debug的时候随时查看EFLAGS寄存器各个标志位的值。

> r

eflags 0x00000002: id vip vif ac vm rf nt IOPL=0 of df if tf sf zf af pf cf

 

PIT

PIT即Programmable Interval Timer,可编程定时或计数器

PIT也叫System Clock,系统时钟,有些资料也叫System Timer,系统定时器。

 

包括8253和8254。

 

通常,BIOS默认设置每秒产生18.2065次IRQ0中断请求,也就是默认频率为18.2065Hz。IBM PC/AT BIOS默认设置每秒产生18.222次IRQ0中断请求,也就是默认频率为18.222Hz。 

 

Programmable Interval Timer (PIT) Controller

 

8253

 

8254

 

Counter

Counter,计数器,也叫Channel,频道。

8253/8254有3个Counter。

 

Channel 0

 

Channel 1

 

Channel 2

 

每个Counter有6种模式

 

Channel Mode

Mode 0

Interrupt on Terminal Count

 

Mode 1

Hardware Triggered One-Shot

 

Mode 2

Rate Generator

 

Mode 3

Square Wave Generator

 

Mode 4

Software Triggered Strobe

 

Mode 5

Hardware Triggered Strobe

 

寄存器

Counter寄存器

包括Counter 0, Counter 1和Counter 2。

这几个寄存器都是16位寄存器。

 

Control Word寄存器

 

 

NASM汇编(整理)参考另一篇文章:https://lobin.iteye.com/blog/2041659

有关汇编以及8086可参考另一篇文章:https://www.iteye.com/blog/lobin-1549433

有关386可参考另一篇文章:https://lobin.iteye.com/blog/2026860

 

  • 大小: 72.3 KB
分享到:
评论

相关推荐

    glibc.i686 + redhat7.9

    标题 "glibc.i686 + redhat7.9" 和描述 "glibc.i686 + redhat7.9 rpm安装文件" 提到了两个关键元素:`glibc.i686` 和 `redhat7.9`。这表明我们要讨论的是在Red Hat Enterprise Linux 7.9 (RHEL 7.9) 操作系统上安装...

    glibc.i686.zip

    在给定的压缩包“glibc.i686.zip”中,包含两个i686架构的rpm包:glibc-2.12-1.212.el6.i686.rpm和glibc-common-2.12-1.212.el6.i686.rpm。这两个rpm包是glibc在特定版本(这里是2.12)和特定发行版(这里可能是...

    glibc.i686.zip-64位Linux系统安装32位版本程序

    在银企直连工作过程中需要用到消息中间件tlq,安装此程序之后, 启动时报错:-bash: /home/tlq/TLQ63/bin/tlq: /lib/ld-linux.so.2: bad ELF interpreter: 没有那个文件或目录, ...libattr-2.4.44-7.el6.i686.rpm

    西门子保护装置Modbus通讯点表Com_Modbus_7SJ686_7SD686_7UT686_zh.pdf

    本文档描述了 SIPROTEC 装置 7SJ686 Modbus slave, 7SD686 Modbus slave 和 7UT686Modbus slave 的寄存器映射结构,适用于 SIPROTEC 装置: 7SJ686 ( 固件版本 V4.90), 7SD686( 固件版本 V4.04), 7UT686( 固件...

    linux最全的需要oracle11g的rpm包,包括i686和x86_64版本

    最全的需要oracle11g的rpm包,包括i686和x86_64版本 binutils-2.20.51.0.2-5.11.el6 (x86_64) compat-libcap1-1.10-1 (x86_64) compat-libstdc++-33-3.2.3-69.el6 (x86_64) compat-libstdc++-33-3.2.3-69.el6.i686 ...

    AccessControl-5.4-cp36-manylinux_i686.manylinux1_i686.whl.zip

    标题中的"AccessControl-5.4-cp36-manylinux_i686.manylinux1_i686.whl.zip"表明这是一个与访问控制相关的Python软件包,版本为5.4,适用于Python 3.6解释器。"manylinux_i686"提示这是面向32位Linux系统(i686架构...

    i686-8.1.0-release-posix-dwarf-rt_v6-rev0.7z

    MinGW-W64的32位安装包:i686-8.1.0-release-posix-dwarf-rt_v6-rev0.7z ,支持GCC8.1.0,线程模型为posix,异常处理模型为dwarf, 解压后即可使用。 mingw-w64 版本选择方法: 32位系统选择i686, 64位系统选择x86_...

    glibc-2.17-307.el7.1.i686_libc文件_依赖glibc安装_源码

    标题中的“glibc-2.17-307.el7.1.i686_libc文件_依赖glibc安装_源码”指的是Linux系统中一个重要的动态链接库——GNU C Library(通常简称为glibc)的一个特定版本。glibc是Linux操作系统下最基础、最核心的库,为...

    glic.i686及依赖组件下载

    glic.i686及所依赖的组件 glibc-2.12-1.209.el6.i686.rpm glibc-common-2.12-1.209.el6.i686.rpm nss-softokn-freebl-3.12.7-1.1.el6.i686.rpm

    i686-7.3.0-release-posix-dwarf-rt_v5-rev0.7z

    MinGW-w64 for Windows(i686-7.3.0-release-posix-dwarf-rt_v5-rev0.7z) ,在32位操作系统和32位的Eclipse等开发工具上可以用的离线安装包。 内置的gcc版本为GCC7.3.0,线程模型为posix,异常处理模型为dwarf, 解压...

    mysql-5.1.6-alpha-linux-i686-glibc23.tar.gz

    MySQL是世界上最受欢迎的开源数据库系统之一,而"mysql-5.1.6-alpha-linux-i686-glibc23.tar.gz"是一个针对Linux操作系统的MySQL数据库服务器的早期版本压缩包。这个版本号5.1.6标志着它属于MySQL 5.1系列,但带有...

    libgcc-7.1.1-3.fc26.i686.rpm

    libstdc++-4.8.3-9.el7.i686.rpm libgcc-7.1.1-3.fc26.i686.rpm libgcc-7.1.1-3.fc26.i686-1.rpm libgcc-7.1.1-3.fc26.i686-2.rpm libgcc-7.1.1-3.fc26.i686-3.rpm libgcc-7.1.1-3.fc26.i686-4.rpm

    DL∕T 686-2018 电力网电能损耗计算导则

    DL∕T 686-2018 电力网电能损耗计算导则

    rust-1.15.1-i686-pc-windows-msvc

    《深入理解Rust 1.15.1:i686-pc-windows-msvc编译环境详解》 Rust编程语言,以其高效、安全、并发性以及内存管理的先进特性,深受广大开发者喜爱。Rust 1.15.1是这个版本系列中的一个重要里程碑,它为开发者提供了...

    JLink_Windows_V686e Jlink最新版本

    JLINKV6.86e JLink_Windows_V686e Jlink驱动软件 JlinkV686e Jlink驱动 Jlink JlinkV6.86e Jlink最新版本

    arm-2014.05-29-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2.7z

    arm-2014.05-29-arm-none-linux-gnueabi-i686-pc-linux-gnu 是由 CodeSourcery 公司基于GCC推出的的ARM交叉编译工具。可用于交叉编译ARM系统中所有环节的代码,包括裸机程序、u-boot、Linux kernel、filesystem和App...

    glibc-2.17-292.el7.i686

    centos7_x64安装32位软件需要的glibc-2.17-292.el7.i686

    glibc-devel-2.12-1.7.el6_0.5.i686.rpm

    Linux centos64位系统如要安装oracle必须具备32位glibc-devel软件包,这个软件包害我三天都没装上oracle,特此记录下。glibc-devel-2.12-1.7.el6_0.5.i686.rpm

    gcc-linaro-7.5.0-2019.12-i686_arm-eabi.tar.xz.7z.001

    gcc-linaro-7.5.0-2019.12-i686_arm-eabi.tar.xz.7z.001(共2个压缩分卷)是由 Linaro 公司基于GCC推出的的ARM交叉编译工具。可用于交叉编译32-bit Armv7 Cortex-A, soft-float, little-endian目标中的裸机程序、u-...

    core-3.2.3.v_686_R32x.jar

    core-3.2.3.v_686_R32x.jar core-3.2.3.v_686_R32x.jar

Global site tag (gtag.js) - Google Analytics