单片机程序设计

>编程语言背景


  • 编程语言

    1. 机器语言,
    2. 汇编语言,需要通过汇编生成机器语言,不同单片机的汇编语言不能通用。
    3. 高级语言,通过编译编程机器语言
  • 汇编结构

    1. 四部分:标号:操作码 操作数;注释
  • 汇编伪指令

    1. 作用:不产生可执行的目标代码,帮助进行汇编的指令。指定程序或数据的起始位置,给出存放数据的地址。为中间运算保留有份存储空间,表示源程序结束等。
    2. 起始指令ORG,重新制定了目标程序的起始位置(不再是OOOOH),可以多次使用,定义不同程序段的起始地址
    3. 结束指令END,只能有一个end指令
    4. 定义字节的伪指令DB,定义从指定单元开始的若干个字节的数据,用于定义数据常数表。
      • ORG 2000H
      • DB 30H,8AH,7FH,’a’
    5. 定义数据字的伪指令DW,定义从指定单元开始存储若干个字的数据(双字节称为字)
      • DB ‘a’,’b’ == DB 61H,62H == DW 6162H;
    6. 等值伪指令EQU,赋值指令,用特定的字符代替某一个常数。AA EQU 30H;
    7. 位地址定义伪指令BIT,用于给指定位定义一个标号。
      • ABC BIT P1.1;P1.1 可以用ABC标号代替;
    8. 表示目前地址的伪指令$

> 汇编语言程序设计


加深对面向过程的理解,觉得需要补充C语言的一些知识。
单片机可以实现电脑完全仿真,如果日后对汇编和51单片机有兴趣的话可以使用Proteus模拟51单片机
但是以及用keil进行编程和开发。

  • 程序流程图
    1. 画图

      • 开始框,动作框, 判断框,结束框。
      • 顺序结构
      • 分支结构程序
      • 循环结构
      • 子程序结构
    2. 图文翻译

      感觉汇编面向过程的时候,用程序流程图,可以直接翻译为汇编代码。

> 汇编语言与机器语言


  • 汇编
    汇编的指令能够被 指令存储器翻译成为特定的机器码
    数据能够被 数据存储器储存。
    每一条汇编语言,都有一个对应的机器码。