学习利用汇编语言写单片机程序的第一步是要学习汇编语言的相关理论知识,那么实践操作的第一步肯定是从点灯开始啦!

编译环境:keil4
编译语言:汇编语言
内容:
  一、keil4建立AT89C52的工程环境
  二、程序
  三、分析

一、keil4建立AT89C52的工程环境

1、建立新工程 --> Atmel --> AT89C52

2、 选中后会弹出是否导入启动文件
  如果是C语言环境选择“是”,这里我们是汇编,选择“否”

3、创建汇编文件,后缀名 .asm,将文件添加到工程

4、环境搭建完成

二、程序

这里我们直接上汇编点亮AT89C52单片机P1.0口的程序,然后再进行语句分析

ORG  0000H
LJMP MAIN1
MAIN:MOV P1,#001H
MAIN1:MOV P1,#00AH
END

分析:
1、ORG:规定程序块或数据块存放的起始地址,即规定程序从0000H地址开始,换句话说,以上述程序为例,ORG 0000H 使得LJMP MAIN1这条指令的机器码就在hex文件的0x00的位置

2、LJMP:长转移指令(64KB范围内转移指令)
长转移指令的功能是:把指令码中的目标地址装入程序计数器PC(Program Counter)中,地址范围:0000H - FFFFH,为了使程序设计方便易编,目标地址常采用标号地址(如:MAIN,MAIN1,LOOP…),换句话说,相当于C语言中的goto语句

3、在51单片机中P1口的字节地址为90H,位地址位90H - 97H,可位寻址
MOV P1,#00AH 语句的含义是将P1的低4位赋予立即数,即将90H - 93H 地址赋予 “1”,即将P1.0 - P1.3口拉高

4、#的作用
立即数的标志,如#0FFH,表示的是一个十六进制的数FF,若没有“#”,0FFH则表示位直接地址为00AH的存储单元,AT89C52单片机的RAM中有256个存储单元,每个单元8位,即一个字节,FFH就是最后的那个单元

【汇编】AT89C52点亮一盏LED灯(汇编语言)相关推荐

  1. Esp8266进阶之路11 企业者的福音之8266接入阿里智能,点亮一盏LED灯,期待天猫精灵语音控制的不约而至!

    本系列博客学习由非官方人员 半颗心脏 潜心所力所写,不做开发板.仅仅做个人技术交流分享,不做任何商业用途.如有不对之处,请留言,本人及时更改. 序号 SDK版本 内容 链接 1 nonos2.0 搭建 ...

  2. 记录1——stm32f411CEU6之点亮一盏LED灯+按键控制LED灯

    文章目录 前言 一.准备工作 二.点亮一盏LED灯 1.配置工程 2.代码实现 3.程序烧录注意 三.按键控制LED灯 1.配置工程 2.代码实现 按键控制 按键进阶1: 按键进阶2 3.基于自己理解 ...

  3. 【ESP32DEVKITV1学习笔记】点亮一盏LED灯

    目录 前言 一.环境的搭建 1.下载Visual studio Code 2.下载platformIO IDE 二.点亮一盏LED灯 1.硬件准备 2.新建工程 3.烧录 总结 Q&A 前言 ...

  4. Esp8266进阶之路10 【小实战下篇】Windows系统搭建8266的本地Mqtt服务器,局域网点亮一盏LED灯。(带Demo)

    本系列博客学习由非官方人员 半颗心脏 潜心所力所写,不做开发板.仅仅做个人技术交流分享,不做任何商业用途.如有不对之处,请留言,本人及时更改. 序号 SDK版本 内容 链接 1 nonos2.0 搭建 ...

  5. ESP32入门之GPIO:点亮一盏LED灯

    目录 前言 一.硬件准备 二.使用步骤 1.硬件连接 2. 代码实现 2.1 LED初始化 2.2 KEY初始化 2.3 main函数 2.4 中断处理与任务函数 三 完整代码 总结 参考资料 ​​ ...

  6. Arduino嵌入式开发-如何点亮一盏LED灯

    随着人工智能的不断发展,各种各样的传感器层出不穷,传感器的存在和发展,让物体有了触觉.味觉和嗅觉等感官,让物体慢慢变得活了起来.而Arduino是一款便捷灵活.方便上手的开源电子原型平台.包含硬件(各 ...

  7. 泰凌微ble mesh蓝牙模组天猫精灵学习之旅 ① 小白也痴迷,如何在 Linux环境搭建编译烧录 安信可TB02,点亮一盏LED灯;

    本<泰凌微ble mesh蓝牙模组天猫精灵学习之旅>系列博客学习由非官方人员 半颗心脏 潜心所力所写,仅仅做个人技术交流分享,不做任何商业用途.如有不对之处,请留言,本人及时更改. 1.小 ...

  8. 使用HAL库、STM32CubeMX和Keil 5开发入门教程(一):点亮一盏LED灯(NUCLEO-F411RE)

    转载自:http://blog.csdn.net/charmingsun/article/details/50802267?readlog#t1 本教程以点亮一盏LED灯为目的为大家演示用STM32C ...

  9. Esp8266进阶之路⑨ 【小实战上篇】Windows系统搭建8266的本地Mqtt服务器,局域网点亮一盏LED灯。(带Demo)

    本系列博客学习由非官方人员 半颗心脏 潜心所力所写,不做开发板.仅仅做个人技术交流分享,不做任何商业用途.如有不对之处,请留言,本人及时更改. 序号 SDK版本 内容 链接 1 nonos2.0 搭建 ...

最新文章

  1. 从事IT行业需要了解到
  2. linux 文件解压 压缩
  3. 希尔排序及C语言实现
  4. Py之PyWapFetion:PyWapFetion的简介、安装、使用方法之详细攻略
  5. web怎么用代码创造表格_Python新工具:用三行代码提取PDF表格数据
  6. 点击时候确定某个元素 js_某空气质量监测平台 JS反爬
  7. 二分法查找c语言程序_C语言的那些经典程序 第十四期
  8. 罗永浩宣布进军电商直播;微博回应用户数据泄露;Android 11 开发者预览版 2 发布 | 极客头条...
  9. Loj #2568. 「APIO2016」烟花表演
  10. maven项目没有src/test/java和src/test/resources目录问题解决
  11. 计算机在经济管理中的应用,现代经济管理中计算机技术的运用
  12. php获取笔顺矢量,PHP获取汉字笔画数功能【测试可用】
  13. 会议纪要模板----正式文档
  14. RK3288 Android5.1 隐藏 蓝牙网络共享与移动网络设置项
  15. javaSE(71-148)
  16. 乐博Android客户端(新浪微博)1.01发布,欢迎各位童鞋试用
  17. Navicat连接腾讯服务器时常见错误
  18. 数据挖掘实战(2)——糖尿病数据集(回归问题)
  19. [uni-app] 微信小程序 如何修改替换头像
  20. 搜狐云景client工具评測之WordPress的搭建

热门文章

  1. java小知识:http请求传输文件流
  2. 网易2017年秋招买苹果
  3. 戴尔游匣7559 Win10 固态硬盘系统重装
  4. U盘损坏,无法识别等问题处理方法
  5. Python中的质数运算(101到200)
  6. 人工智能发展的三起两落
  7. P1506 拯救oibh总部题解
  8. SMSSync:Android手机短信猫
  9. test指令两个操作数一样
  10. [SDOI2009]HH去散步