一天掌握C51单片机基础1-计算机数值与MCS51单片机

简介

本笔记参考B站高宏亮老师的教学视频:点击观看


计算机的数值表示

源码

正数:首位 0,其余七位表示实际数值
负数:首位 1,其余七位表示实际数值

缺点是部分运算会出错,需要额外的算法对其进行处理,十分麻烦


反码

正数:首位 0,其余七位表示实际数值
负数:首位 1,其余七位为正数七位的逐位取反结果

例如:正数 01011100,则负数 10100011

缺点是正负运算或者负负运算都会少一个 1


补码

完美的编码方式,不会产生致命性错误,几乎所有计算机都使用该编码系统

正数:首位 0,其余七位表示实际数值
负数:首位 1,其余七位为正数七位的逐位取反后加一

例如:正数 01111000,负数 10000111

最后加一的作用就是为了抵消反码中出现的“误差 1”现象


MCS51 单片机

型号与构成

MCS-51 单片机型号对应参数解析图

在这里插入图片描述

基本内部结构图

在这里插入图片描述


常用器件介绍

  • ACC 累加器:ALU 进行运算时,数据绝大部分来自累加器 A
  • PSW 标志寄存器:一个 8 位寄存器,保存指令执行结果状态

常见控制部件

  • 定时和控制电路
  • 指令寄存器
  • 指令译码器
  • 程序计数器 PC
  • 堆栈指针 SP
  • 数据指针 DPTR

存储结构

程序存储器 ROM

  • 存放单片机工作时的程序,没有 ROM 就无法工作
  • MCS51 内置程序计数器 PC,他可指示 CPU 下一步所处理的程序在 ROM 中的地址
  • ROM 有片内存储器和片外存储器(通过总线访问)两种

为便于快速访问片内和片外 ROM,单片机自带控制线 EA,来决定使用内还是外 ROM
EA=1,高电平,当 PC 大于某值时访问片外 ROM,其余时刻访问片内 ROM
EA=0,低电平,片内 ROM 被忽略

ROM 存在七个特殊的地址
在这里插入图片描述


数据存储器 RAM

  • 具备快速存取功能,掉电后数据立刻丢失
  • 同样具有片内和片外两个类型

内部寄存器分为以下几个主要区域

  1. 工作寄存器:也称通用寄存器,每次存储 8 个信息,共 4 组,每组用 R0-R7 表示
  2. 位寻址区
  3. 一般 RAM 区:也称用户 RAM 区,80 字节
  4. 堆栈区与堆栈指针,安装 LIFO 原则
  5. 特殊功能寄存器:类似于一个自定义变量池,用户可以自定义,但是不可以挪作他用

外部引脚与总线接口

在这里插入图片描述

P0 口(P0.0-P0.7)
不接片外存储器与扩展 IO 口时,作为双向 IO 口使用;
反之,分时复用为低八位地址总线与双向数据总线;

P1 口(P1.0-P1.7) 可做双向 IO 口

P2 口(P2.0-P2.7)一般做双向 IO 口,扩展外存后可做高八位地址总线

P3 口(P3.0-P3.7)除做双向 IO 口外,还可做特殊用途
在这里插入图片描述


控制线
在这里插入图片描述


MCS51 单片机通过不同信号对内外存储器进行读写操作;
片外数据存储器通过 RD\WR 指令读写;
片外程序存储器读通过 PSEN 指令实现;


并行 IO 口工作原理

主要有四大 IO 口,他们具有特殊锁存作用,分别是 P0 P1 P2 P3

P1

在这里插入图片描述

写入时:
D=1,此时锁存器右下角 Q 为对 D 取反,得到 0,此时场效应管 V1=0,不导通,VCC=5v 直接通过上拉电阻输出信号 1
D=0,Q 取反得 1,此时 V1=1,场效应管导通,故与 VCC=5v 相互抵消,输出信号 0

读入时:
D=0,场效应管不导通,外界信号直接流入通过下方绕过


P3

在这里插入图片描述

读写流程和 P1 口几乎一致,只不过要注意第二功能区的与非门,即 1 和 1 取 0,1 和 0 取 1,以此类推


P2

在这里插入图片描述

MUX 数据选择器,可视为一单刀双掷开关,当控制=0 时,链接锁存器;当控制=1 时,链接地址总线;


工作周期

晶振

XTAL1 以及 XTAL2 口为外接晶振口;
内部晶振由一个反相放大器构成


复位方式

外部电路使 RST 端出现连续两周期的高电平,此时执行复位;


机器周期

  • 机器周期包含 S1-S6 六个
  • 一个状态包含两拍 P1\P2
  • 一个拍称为一个时钟周期

在这里插入图片描述


指令周期

定义:机器取一个指令并将其完整执行完毕的周期过程;

一个指令周期一般由 1-2 个机器周期组成;
仅乘除运算需 4 机器周期完成;


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Zhillery

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值