【总结】PSW(程序状态字)、FLAGS(标志寄存器)

对比维度 PSW(程序状态字,Program Status Word) FLAGS(标志寄存器,Flags Register)
核心定义 存储 CPU 当前运行状态的完整状态字,是反映程序执行状态和 CPU 控制状态的集合 存储算术逻辑运算(ALU)结果特征及部分 CPU 状态的寄存器,是 PSW 的核心组成部分
本质属性 一个状态字(数据结构),可由多个寄存器共同承载(部分架构中 PSW 是独立寄存器,本质仍为状态集合) 一个专用寄存器(硬件实体),直接由 CPU 硬件修改和访问
包含范围 范围广,包含以下 3 类核心信息:1. 标志位(即 FLAGS 寄存器的全部内容);2. 程序计数器(PC);3. 栈指针(SP);4. 中断屏蔽位(IM);5. 特权级(PL);6. 指令寻址模式等控制信息 范围窄,仅包含标志位,具体分为:1. 状态标志(ZF、SF、CF、OF、AF、PF);2. 控制标志(DF、IF、TF)(部分架构将控制标志归为 PSW 其他字段,408 默认 FLAGS 包含两类)
主要功能 1. 保存程序执行的完整上下文(支持进程切换、中断返回);2. 控制 CPU 的运行模式(如特权级、中断使能);3. 提供程序执行的状态反馈(通过包含的 FLAGS) 1. 记录算术逻辑运算结果的特征(如是否为零、是否溢出、是否有进位);2. 控制特定指令的执行行为(如 DF 控制串操作的地址递增 / 递减);3. 支持条件转移指令的判断依据
修改方式 1.硬件修改:中断发生、进程切换时,CPU 自动保存 / 恢复 PSW;2. 软件修改:通过特权指令(如 LMSW、SMSW)修改控制字段(如特权级、中断屏蔽位) 1. 硬件修改:算术逻辑运算(ADD、SUB、AND 等)、串操作指令自动修改状态标志;2. 软件修改:通过专用指令(如 CLC、STC、CLD、STD、CLI、STI)修改控制标志(状态标志一般不直接软件修改,需通过运算间接改变)
访问方式 一般通过特权指令访问,用户态程序不可直接读写(避免破坏系统状态) 1. 状态标志:用户态程序可通过指令间接读取(如 LAHF)或通过条件转移指令隐含使用;2. 控制标志:部分可由用户态指令修改(如 CLD、CLI),部分受特权级限制
408 考纲核心考点 1. PSW 的组成(标志位、PC、特权级等);2. PSW 在中断处理、进程切换中的作用(上下文保存与恢复);3. 特权指令与 PSW 的交互 1. 6 个状态标志(ZF、SF、CF、OF、AF、PF)的定义、计算规则;2. 3 个控制标志(DF、IF、TF)的功能;3. 标志位与条件转移指令的配合(如 JZ、JC、JO 等指令如何依据标志位跳转)
典型架构示例(408 常考) 1. 8086 架构:PSW 是 16 位寄存器(AX~DX 同级别),包含 FLAGS 的 16 位标志位(其中 9 位有效)+ 无 PC/SP(8086 中 PC、SP 是独立寄存器,PSW 仅含标志和部分控制字段);2. 通用架构:PSW 作为 "状态集合",整合 FLAGS、PC、特权级等,支持上下文切换 8086 架构:FLAGS 是 16 位寄存器,包含 6 个状态标志(ZF、SF、CF、OF、AF、PF)和 3 个控制标志(DF、IF、TF),是 PSW 的核心子集(408 真题常以 8086 架构为背景考查 FLAGS)

包含关系 :FLAGS 是 PSW 的核心子集,PSW 必须包含 FLAGS 的全部标志位,才能完整反映程序执行状态;

功能互补:FLAGS 负责 "微观状态反馈与指令控制"(如运算结果特征、串操作方向),PSW 负责 "宏观上下文管理与 CPU 控制"(如进程切换、特权级管理);

协同工作 :例如执行ADD A,B指令时,首先 CPU 通过 PSW 确认当前特权级(是否允许执行),运算后 FLAGS 自动修改状态标志(如 CF、ZF),最终 PSW 保存更新后的 FLAGS,为后续条件转移指令(如JC)提供判断依据。

常考查 "FLAGS 标志位计算"(如给定运算,判断 CF、OF 是否为 1)和 "PSW 在中断 / 进程切换中的作用",需重点区分二者的功能边界

408 考纲明确 FLAGS 包含状态标志和控制标志

相关推荐
白猫不黑11 小时前
AI时代如何利用AI学好网络安全
人工智能·安全·web安全·计算机·网络安全·信息安全
新新学长搞科研11 小时前
【IEEE出版,中石大主办】第八届信息与计算机前沿技术国际学术会议(ICFTIC 2026)
计算机
小小小小钰儿4 天前
1.2-AI核心理论与术语
人工智能·计算机·网络安全·信息安全·程序员·编程
●VON11 天前
AtomGit 新手教程:Issue 和 PR 是什么?从 Fork、Clone 到提交 Pull Request 全流程
计算机·issue·pr
烟锁池塘柳013 天前
Windows11系统的计算机更新BIOS到最新版本的操作方法
计算机·硬件·bios
AI小码14 天前
如何让AI帮你构建项目?七级方法
人工智能·算法·计算机·ai·程序员·大模型·编程
程序员鱼皮22 天前
小红书爆了!中美程序员疯狂对账
计算机·程序员·互联网·编程经验
郝学胜-神的一滴25 天前
干货版《算法导论》17:二叉树核心原理、遍历逻辑与高阶实操全解
数据结构·c++·python·算法·计算机·编程
瑞码空间1 个月前
Python爬虫进阶实战笔记
开发语言·python·计算机·python爬虫
码字的特恩1 个月前
微软确认暂不为 Windows 11 加入透明效果自定义功能,建议用户使用第三方工具
人工智能·windows·算法·microsoft·计算机·大模型·编程