8051中的位处理指令组
在 8051 微控制器中,逻辑指令组下有 17 条不同的指令。总共有 17 个操作码。进位标志 (CY) 在不同的位处理指令中充当单比特累加器。
在下表中,我们将看到助记符、长度、机器周期执行时间、操作码数量等。
| 助记符 | 字节数 | 执行时间 | 操作码数 |
|---|---|---|---|
| CLR C | 1 | 1 | 1 |
| CLR bit | 2 | 1 | 1 |
| SETB C | 1 | 1 | 1 |
| SETB bit | 2 | 1 | 1 |
| CPL C | 1 | 1 | 1 |
| CPL bit | 2 | 1 | 1 |
| ANL C, bit | 2 | 2 | 1 |
| ANL C, /bit | 2 | 2 | 1 |
| ORL C, bit | 2 | 2 | 1 |
| ORL C, /bit | 2 | 2 | 1 |
| MOV C, bit | 2 | 1 | 1 |
| MOV bit, C | 2 | 2 | 1 |
| JC rel | 2 | 2 | 1 |
| JNC rel | 2 | 2 | 1 |
| JB bit, rel | 3 | 2 | 1 |
| JNB bit, rel | 3 | 2 | 1 |
| JBC bit, rel | 3 | 2 | 1 |
示例
| 序号 | 指令及说明 |
|---|---|
| 1 | CLR C 此指令用于将进位标志清零为 0。 |
| 2 | SETB 0D5H 此指令属于 SETB bit 类型。它将 1 位设置为 1。这里该位是 D5(即 PSW 的 F0 引脚)。此指令也可以这样写:SETB PSW.5 或 SETB F0。 |
| 3 | CPL C 它对进位标志的内容取反。 |
| 4 | ANL C, 07 使用此指令,它将 C 位与第 7 位进行与运算。(这里 7 指示内部 RAM 位置 20H 中的 MS 位。) |
| 5 | ORL C, /07 此指令将 C 位与第 7 位的补码进行或运算。 |
| 6 | MOV C, 05 此指令将第 5 位的内容移到进位标志。 |
| 7 | JC LABEL 这是一个跳转指令。当进位标志为 1 时,它将跳转到 LABEL。 |
| 8 | JNB 80H, LABEL 通过此指令,当端口 0 的 LS 位为低电平时,它将跳转到 LABEL。 |
| 9 | JBC 80H, LABEL JBC 代表“如果位已设置则跳转,然后清除该位”。当端口 P0 的 LS 位为高电平时,它将跳转到 LABEL 指向的位置。 |
广告
数据结构
网络
关系数据库管理系统 (RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP