内容正文:
四川省(对口招生)电子信息类《单片机原理及应用》
知识点讲解
考点18 重点掌握位处理指令
【考情分析】
本专题是 MCS-51 单片机指令系统的特色必考考点,也是电子信息类对口招生考试中汇编程序设计、外设控制编程的核心基础。考查形式以单选题、判断题为主,常结合中断系统、定时器 / 计数器、串口通信等考点出现在程序分析题中。考点侧重位寻址空间范围、位操作指令的格式与功能、位转移指令的执行逻辑、位操作与字节操作的差异区分,需精准掌握各类位指令的使用规则与典型应用,避免与字节操作指令混淆。
考纲解读
1
掌握 MCS-51 单片机位处理机的概念及位寻址空间范围
2
掌握位传送指令、位逻辑运算指令的格式与功能
3
掌握位控制转移指令的执行条件与应用
4
区分位操作指令与字节操作指令的差异,能正确应用位指令实现开关量控制
位处理指令核心概述
MCS-51单片机内部集成了一个独立的布尔处理器(位处理器),拥有专门的位处理指令集,可直接对二进制位进行传送、逻辑运算、控制转移等操作。
这是 MCS-51系列单片机的核心特色之一,极大简化了工业控制中开关量检测、逻辑判断、外设控制等场景的程序设计。
位处理指令的操作对象是位地址,而非字节地址,所有位操作均通过进位标志位CY(PSW.7)作为位累加器完成。
一、位寻址空间
MCS-51单片机的位寻址空间分为两部分,总共有256个可寻址位:
片内RAM 位寻址区:地址范围为20H-2FH(共16字节),对应128个可寻址位,位地址为00H-7FH。
特殊功能寄存器(SFR)可位寻址区:字节地址能被8整除的 SFR(共11个),对应128个可寻址位,位地址为80H-FFH。
位地址的4 种表示方法(高频考点):
直接位地址:如00H、D0H
字节地址 位号:如20H.0、D0H.0
寄存器名 位号:如PSW.0、ACC.7
位名称:如CY、P、EA
二、位传送指令
位传送指令用于实现位累加器CY与任意可寻址位之间的数据传送,不能直接在两个可寻址位之间进行数据传送。
指令助记符
指令功能
操作说明
MOV C, bit
将位地址 bit 中的数据传送到进位位 CY
CY ← (bit)
MOV bit, C
将进位位 CY 中的数据传送到位地址 bit
(bit) ← CY
关键特性:
所有位传送必须通过CY中转,例如要将P1.0的状态传送到 P1.1,需执行两条指令:MOV C, P1.0 → MOV P1.1, C
不影响除CY外的其他标志位。
三、位逻辑运算指令
位逻辑运算指令包括清零、置1、取反、逻辑与、逻辑或 5 类,所有运算均以CY为核心操作数。
指令助记符
指令功能
操作说明
CLR C
清零进位位 CY
CY ← 0
CLR bit
清零指定可寻址位
(bit) ← 0
SETB C
置 1 进位位 CY
CY ← 1
SETB bit
置 1 指定可寻址位
(bit) ← 1
CPL C
取反进位位 CY
CY ← /CY
CPL bit
取反指定可寻址位
(bit) ← /(bit)
ANL C, bit
CY 与指定位逻辑与
CY ← CY ∧ (bit)
ANL C, /bit
CY 与指定位的反逻辑与
CY ← CY ∧ /(bit)
ORL C, bit
CY 与指定位逻辑或
CY ← CY ∨ (bit)
ORL C, /bit
CY 与指定位的反逻辑或
CY ← CY ∨ /(bit)
关键特性:
位逻辑运算只有与、或、非三种,没有异或运算,异或需通过组合指令实现。
/bit表示对指定位的内容取反后参与运算,不改变原指定位的数值。
四、位控制转移指令
位控制转移指令根据指定位的状态或 CY 的状态决定程序是否转移,是实现条件分支的核心指令。
指令助记符
转移条件
指令功能
JC rel
CY=1
若进位位为 1,则转移到目标地址
JNC rel
CY=0
若进位位为 0,则转移到目标地址
JB bit, rel
(bit)=1
若指定位为 1,则转移到目标地址
JNB bit, rel
(bit)=0
若指定位为 0,则转移到目标地址
JBC bit, rel
(bit)=1
若指定位为 1,则转移到目标地址,同时将该位清零
关键特性:
所有位转移指令均为相对转移指令,转移范围为当前PC值的 - 128~+127字节。
JBC指令是唯一一条执行后会修改操作数的转移指令,常用于清除中断标志位。
五、位操作核心指令高频考点对比表
指令类型
核心指令
操作对象
关键特性
易错点
位传送
MOV C, bit / MOV bit, C
CY与可寻址位
必须通过 CY中转
不能直接 MOV bit1, bit2
位清零 / 置 1
CLR bit / SETB bit
任意可寻址位
直接修改指定位
与字节操作 CLR A区分
位逻辑运算
ANL C, /bit / ORL C, /bit
CY 与指定位
/bit不改变原数据
易误写为 ANL bit, C
位转移
JB bit, rel / JBC bit, rel
任意可寻址位
相对转移
JBC 会自动清零指定位
进位转移
JC rel / JNC rel
仅 CY
判断进位标志
与字节转移指令 JZ 区分
例题 1. MCS-51 单片机中,位处理指令的位累加器是()
A. ACC B. B C. CY D. SP
【解析】MCS-51 位处理器以进位标志位 CY 作为位累加器,所有位操作均通过 CY 完成;ACC 是字节累加器。答案:C
例题 2. 下列关于 MCS-51 位寻址空间的描述,正确的是()
A. 片内 RAM 位寻址区地址为 00H~1FH
B. 所有特殊功能寄存器均可位寻址
C. 总共有 256 个可寻址位
D. 位地址只能用直接地址表示
【解析】片内 RAM 位寻址区为 20H~2FH;仅字节地址能被 8 整除的 SFR 可位寻址;位地址有 4 种表示方法。答案:C
例题 3. 下列指令中,合法的位传送指令是()
A. MOV P1.0, P1.1 B. MOV C, P1.0
C. MOV A, P1.0 D. MOV 20H, 21H
【解析】位传送必须通过 CY 中转,A 错误;A 是字节寄存器,不能直接接收位数据,C 错误;D 是字节传送指令。答案:B
例题 4.(判断题) MCS-51 单片机中,执行指令ANL C, /P1.0后,P1.0 的内容会被取反。()
【解析】/P1.0表示将 P1.0 的内容取反后参与运算,不会改变 P1.0 本身的数值。答案:×
例题 5.(判断题) 指令JBC P1.0, LOOP的功能是:若 P1.0 为 1,则跳转到 LOOP,同时将 P1.0 清零。()
【解析】JBC 指令的功能是判断指定位为 1 时转移,并自动清零该位,常用于清除中断标志。答案:√
【参考答案】 C C B × √
【高考题实战】
真题 1(2025 高考 单选)MCS-51 单片机中,不能直接进行位寻址的区域是( )
A. 片内 RAM 20H\2FH B. 特殊功能寄存器 ACC
C. 片内 RAM 00H\1FH D. 特殊功能寄存器 PSW
答案:C
真题 2(2025 高考 单选)下列指令中,属于位逻辑运算指令的是( )
A. ANL A, #01H B. ANL C, 00H
C. ORL A, R0 D. XRL A, B
答案:B
真题 3(2024 高考 单选)执行指令JB P1.0, NEXT时,若 P1.0=0,则程序将()
A. 跳转到 NEXT 执行 B. 顺序执行下一条指令
C. 清零 P1.0 D. 置 1P1.0
答案:B
真题 4(2023 高考 单选)MCS-51 单片机中,唯一一条执行后会修改操作数的位转移指令是()
A. JC rel B. JNB bit, rel
C. JBC bit, rel D. JNC rel
答案:C
真题 5(2025 高考 单选)要将 P1 口的第 3 位清零,正确的指令是()
A. CLR P1.3 B. CLR 93H
C. CLR P1 D. A 和 B 都正确
答案:D
真题 6(2024 单招 判断)MCS-51 单片机可以直接在两个可寻址位之间进行数据传送。()
答案:×
真题 7(2025 高考 判断)位地址 20H 对应的是片内 RAM 20H 单元的第 0 位。()
答案:×
真题 8(2023 单招 判断)执行指令SETB EA可以开启 MCS-51 单片机的总中断。()
答案:√
真题 9(2024 高考 单选)下列关于位控制转移指令的描述,正确的是()
A. 转移范围为 64KB
B. 均为绝对转移指令
C. 转移范围为 - 128~+127 字节
D. 只能根据 CY 的状态转移
答案:C
真题 10(2025 高考 单选)要实现 “若 P1.1 为 0 则跳转到 LOOP” 的功能,应使用的指令是()
A. JB P1.1, LOOP B. JNB P1.1, LOOP
C. JC P1.1, LOOP D. JNC P1.1, LOOP
答案:B
【参考答案】C B B C D × × √ C B
【模拟演练】
一、单选题
1. MCS-51单片机中,片内RAM位寻址区的地址范围是()
A. 00H~1FH B. 20H~2FH C. 30H~7FH D. 80H~FFH
2. 下列特殊功能寄存器中,不能进行位寻址的是()
A. P0 B. TCON C. SBUF D. IE
3. 要将进位位CY取反,正确的指令是()
A. CPL C B. CPL CY C. NOT C D. XRL C, #1
4. 执行指令MOV C, 20H后,CY中的数据来自()
A. 片内RAM 20H单元的第0位
B. 片内RAM 20H单元的全部内容
C. 片内RAM 24H单元的第0位
D. 特殊功能寄存器20H
5. 下列指令中,能实现“将P1.2置1”功能的是()
A. SETB 92H B. SETB P1.2
C. ORL P1, #04H D. 以上都正确
6. 执行指令ANL C, /P3.0后,若P3.0=1,则CY的值为()
A. 0 B. 1 C. 不变 D. 不确定
7. 指令JNC rel的转移条件是()
A. CY=0 B. CY=1 C. A=0 D. A≠0
8. 要清除P1口的第5位,同时不影响其他位,正确的指令是()
A. CLR P1.5 B. ANL P1, #0DFH
C. A和B都正确 D. 以上都不对
9. 下列关于位处理指令的说法,错误的是()
A. 位操作的最小单位是二进制位
B. 所有位运算都通过CY完成
C. 位转移指令都是相对转移指令
D. 可以直接对两个位进行逻辑与运算
10. 执行指令JBC TF0, TIMER后,若TF0=1,则()
A. 跳转到TIMER,TF0保持1
B. 跳转到TIMER,TF0被清零
C. 顺序执行,TF0保持1
D. 顺序执行,TF0被清零
二、判断题
1. MCS-51单片机的位处理器是一个独立的硬件单元,专门用于位操作。()
2. 片内RAM 2FH单元的最高位对应的位地址是7FH。()
3. 指令MOV 00H, C的功能是将CY的值传送到片内RAM 20H.0位。()
4. 位逻辑运算指令ANL bit, C是合法的MCS-51指令。()
5. 指令CPL P1的功能是将P1口的8位全部取反,属于位操作指令。()
6. 位控制转移指令的转移目标地址必须在当前指令的下一条指令地址的-128~+127字节范围内。()
7. 执行指令ORL C, /P1.0后,P1.0的内容会被取反。()
8. 要检测P3.3是否为高电平,可以使用指令JB P3.3, CHECK。()
9. 特殊功能寄存器的字节地址能被8整除时,该寄存器可以进行位寻址。()
10. 位操作指令和字节操作指令的操作数格式完全相同,可以互换使用。()
【参考答案】
一、单选题
B C A C D A A C D B
二、判断题
√ √ √ × × √ × √ √ ×
原创精品资源学科网独家享有版权,侵权必究
学科网(北京)股份有限公司zxxk.com
学科网(北京)股份有限公司
$