目录

  • 简介
  • 计算机的数值表示
    • 源码
    • 反码
    • 补码
  • MCS51 单片机
    • 型号与构成
    • 存储结构
    • 外部引脚与总线接口
    • 并行 IO 口工作原理
    • 工作周期

简介

本笔记参考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 机器周期完成;

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

  1. 51单片机设计简易计算机原理,基于AT89C51单片机简易计算器的设计(DOC).docx

    PAGE PAGE # 基于AT89C51单片机简易计算器的设计 [摘要]单片机的出现是计算机制造技术高速发展的产物,它是嵌 入式控制系统的核心,如今,它已广泛的应用到我们生活的各个领域, 电子.科技 ...

  2. MCS-51单片机C语言程序注释,精通MCS-51单片机C语言编程

    领取成功 您已领取成功! 您可以进入Android/iOS/Kindle平台的多看阅读客户端,刷新个人中心的已购列表,即可下载图书,享受精品阅读时光啦! - | 回复不要太快哦~ 回复内容不能为空哦 ...

  3. 单片机跑马灯程序c语言,MCS-51单片机控制跑马灯的三种方法

    描述 在MCS一51单片机的控制系统中,它的四个并行8位输入输出端口P0一P3是我们经常使用的.在并行端口的编程学习中,"跑马灯"是单片机并行端口输出控制的典型实例.所谓跑马灯,是 ...

  4. 计算机原理与应用简称,基础知识-计算机原理与应用.ppt

    基础知识-计算机原理与应用 第1章 基础知识 本章内容: 单片机的概念 单片机的发展.基本的结构和特点 单片机的应用模式和领域 MCS-51单片机等. 1.1 计算机的一些概念 1.2 单片机 单片机 ...

  5. 单片机知识点总结框图_单片机基础知识

    什么是单片机: 顾名思义,单片机中的"单片"就是只有一个芯片, "机"就是指计算机,只有有一个芯片,她却具有简单计算机的功能,这就叫做单片机,也教微处理器微控制 ...

  6. 单片机c语言编程教学大纲,2014《单片机原理及应用》课程教学大纲.doc

    <单片机原理及应用>课程教学大纲 第一部分 大纲说明 一.课程的性质.目的与任务 <单片机原理及应用>是计算机科学与技术.计算机应用技术.电子信息工程专业的专业课.本课程是以M ...

  7. 单片机c语言编程教学大纲,9C语言单片机开发技术教学大纲(16学时)新.doc

    9C语言单片机开发技术教学大纲(16学时)新 <C语言单片机开发技术>课程教学大纲 课程代码:010142061 课程英文名称:Development technology of C la ...

  8. 单片机_第2章 MCS-51单片机的结构及原理

    目录 2.1 MCS-51单片机的结构 2.1.1 MCS-51单片机的内部结构 80C51单片机的内部资源主要包括: CPU(Central Processing Unit ) 2.1.2 MCS- ...

  9. c51编程语言基础习题,《单片机基础》练习题及答案

    单片机基础(第3版) 第1章计算机基础知识 (一)填空题 1.十进制数14对应的二进制数表示为(1110B),十六进制数表示为(0EH).十进制数-100的补码为(9CH),+100的补码 为(64H ...

最新文章

  1. Attention的相关工作
  2. BZOJ 2287 【POJ Challenge】消失之物
  3. 20162318 2018-2019-2《网络对抗技术》Exp1 PC平台逆向破解
  4. 海量大数据大屏分析展示一步到位:DataWorks数据服务+MaxCompute Lightning对接DataV最佳实践...
  5. CF235D-Graph Game【LCA,数学期望】
  6. 一起谈.NET技术,在MVC2.0使用Lodop为WEB打印提出完美解决方案
  7. proc_fs文件的操作
  8. Puppet安装与配置简介(附视频教程)
  9. word上怎么把图片拼接到一起_图片合并,WORD如何将文字与图片合并
  10. 猫扑_猫女郎图片批量下载器
  11. Windows下CMake的下载与安装详解
  12. mavonEditor编辑器的使用
  13. 日语五段动词变形规则
  14. JavaEclipse中从Lambada表达式运行错误的解决方法到学到新知识
  15. 关于球表面积大小是思考
  16. 计算机组网的有线传输媒介主要依赖,家庭无线局域网组建毕业论文
  17. SpringBoot——【thymeleaf】——为什么要使用thymeleaf
  18. SwiftUI之NavigationView的基础使用与进阶实践
  19. kotlin java 效率_Java与Kotlin系列文章之性能问题详解
  20. oracle设置会计科目管理器,系列之四:ORACLE EBS基础设置要点简介(E) - season的日志 - 网易博客...

热门文章

  1. ip68级防水可以泡多久_视频亲测!IP68级防水的S7 edge在水下能用吗
  2. java开发中推荐的防御sql注入方法_SQL 注入防御方法总结
  3. Java篇 - 随机数的原理、伪随机和优化
  4. 阿里p8耗时一个月整理的面试突击手册助力金三银四
  5. HTTP系列 HTTP协议是一个渣男
  6. win10任务栏日期突然消失
  7. java enum getname_Java获取给定Enum值的Enum名称
  8. 动态规划实现矩阵连乘
  9. 恢复出厂设置在哪里?抓住这份官方指南(Win10电脑)
  10. 11-高性能JSON库——fastjson2