80x86的硬件基础知识摘要

匿名 (未验证) 提交于 2019-12-02 23:49:02
16位结构的微处理器: 数据总线为16位
主存容量1 MB: 地址总线为20位
(为什么20位对应1MB:1MB = 1024*1024 bytes = 220bytes)
 
【三种工作模式】
  1. 实模式: 8086/8088的工作方式,即存储器分段方式
  1. 保护模式: 80286起 ,虚拟存储管理和多任务管理
  1. V86模式: 80386起, 同时模拟多个8086工作
 
【(程序可见的)寄存器】
  1. 通用寄存器:
    数据寄存器:
      ax:累加器,速度最快
      bx:基址寄存器,指示存储器地址
      cx :计数器,循环计数
      dx:数据寄存器,存放乘除法结果,在I/o中存放端口地址(IO接口寄存器)
    地址寄存器:
      sp:堆栈指针寄存器,指向栈顶
      bp:基址指针寄存器,指向栈中任意数据
      si:源变址寄存器
      di:目的变址寄存器
  1. 专用寄存器:
    ip:指令指针寄存器
    flags:标志寄存器
    zf:零标志,0则置1
    sf:符号标志,负号置1
    cf:进位标志,有则置1,无符号数溢出判断
    of:溢出标志,有则置1,有符号数溢出判断
    af:辅助进位标志,低4位有进位则置1
    pf:奇偶标志,1的个数为偶数则置1
    tf:跟踪标志,单步执行则置1
    if:中断允许标志,允许则置1
    df:方向标志,si,di自减则置1
  1. 段寄存器
    cs:代码段寄存器
    ds:数据段寄存器
    ss:堆栈段寄存器
    es:附加段寄存器
 
寄存器归纳总结:
8位寄存器有8个:AL,AH,BL,BH,CL,CH,DL,DH
可以用来指示存储器地址的有10个: BX BP SI DI IP SP DS CS ES SS(没有DX)
既可以用来指示存储器地址又可以用来存放操作数的有5个:BX BP SI DI SP(简而言之,段寄存器和IP不能存放)
执行算数运算时,FLAGS有6个标志位受影响:ZF,SF,CF,OF,AF,PF
约定用于形成堆栈段物理地址的寄存器有:SS,BP,SP
作为指针使用的寄存器:SI,DI,BX,BP,SP
存放端口地址: DX
 
 
 
 
 
转载请标明出处:80x86的硬件基础知识摘要
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!