2021-09-23 51蛋骗鸡单按键计数实现不同功能不同写法占用空间比较

 缘由小容量的单片机芯片怎么提高存储空间利用率? - 24小时必答区 https://bbs.csdn.net/topics/600865890

#include "reg52.h"
sbit k=P2^0;
void main()
{unsigned char a=0,xd=0;while(1){if(k==0&&++xd==0){++a;while(k==0);}if(a==1)P0=~1;else if(a==2)P0=~3;else if(a==3)P0=~2;else {P0=255;a=0;}}
}
#include "reg52.h"
sbit k=P2^0;
unsigned char led[]={0,1,3,2};
void main()
{unsigned char a=0,xd=0;while(1){if(k==0&&++xd==0){++a;while(k==0);}if(a>=4)a=0;P0=~led[a];}
}
#include "reg52.h"
sbit k=P2^0;
unsigned char led[]={0,1,3,2};
void main()
{unsigned char a=0,xd=0;while(1){if(k==0&&++xd==0){++a;while(k==0);}if(a==4)a=0;P0=~led[a];}
}
#include "reg52.h"
sbit k=P2^0;
void main()
{unsigned char a=0,xd=0;while(1){if(k==0&&++xd==0){++a;while(k==0);}switch(a){case 0x01:	P3 = 1;	break;case 0x02:	P3 = 3;	break;case 0x03:	P3 = 2;	break;default:	P3 = 0; a = 0;	break;}}
}
C:0x0000    020032   LJMP     C:0032main:
C:0x0003    E4       CLR      A
C:0x0004    FF       MOV      R7,A
C:0x0005    FE       MOV      R6,A
C:0x0006    20A008   JB       k(0xA0.0),C:0011
C:0x0009    0E       INC      R6
C:0x000A    EE       MOV      A,R6
C:0x000B    7004     JNZ      C:0011
C:0x000D    0F       INC      R7
C:0x000E    30A0FD   JNB      k(0xA0.0),C:000E
C:0x0011    EF       MOV      A,R7
C:0x0012    24FE     ADD      A,#0xFE
C:0x0014    600C     JZ       C:0022
C:0x0016    14       DEC      A
C:0x0017    600E     JZ       C:0027
C:0x0019    2402     ADD      A,#0x02
C:0x001B    700F     JNZ      C:002C
C:0x001D    75B001   MOV      P3(0xB0),#0x01
C:0x0020    80E4     SJMP     C:0006
C:0x0022    75B003   MOV      P3(0xB0),#0x03
C:0x0025    80DF     SJMP     C:0006
C:0x0027    75B002   MOV      P3(0xB0),#0x02
C:0x002A    80DA     SJMP     C:0006
C:0x002C    E4       CLR      A
C:0x002D    F5B0     MOV      P3(0xB0),A
C:0x002F    FF       MOV      R7,A
C:0x0030    80D4     SJMP     C:0006
C:0x0032    787F     MOV      R0,#0x7F
C:0x0034    E4       CLR      A
C:0x0035    F6       MOV      @R0,A
C:0x0036    D8FD     DJNZ     R0,C:0035
C:0x0038    758107   MOV      SP(0x81),#0x07
C:0x003B    020003   LJMP     main(C:0003)

Program Size: data=9.0 xdata=0 code=71
Program Size: data=13.0 xdata=0 code=186
Program Size: data=13.0 xdata=0 code=180
Program Size: data=9.0 xdata=0 code=62

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/665729.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

React16源码: React中详解在渲染阶段Suspend的源码实现

Suspend 挂起详解 1 )概述 在react的更新过程当中,它的任务是可以被挂起的,也就是 Suspend关于 Suspend 字面意思就是挂起在某次更新的任务更新完成之后,暂时不提交 在 react更新中,分为两个阶段,首先是re…

16:JSP简介、注释与Scriptlet、Page指令元素、Include操作、内置对象、四种属性-Java Web

在Java Web开发领域,JavaServer Pages(JSP)作为一种动态网页技术,在构建高效Web应用程序中发挥着核心作用。本文将详细介绍JSP的基础概念,包括其基本结构、注释方法、Scriptlet的使用、Page指令元素的功能以及Include包…

回归预测 | Matlab基于OOA-LSSVM鱼鹰算法优化最小二乘支持向量机的数据多输入单输出回归预测

回归预测 | Matlab基于OOA-LSSVM鱼鹰算法优化最小二乘支持向量机的数据多输入单输出回归预测 目录 回归预测 | Matlab基于OOA-LSSVM鱼鹰算法优化最小二乘支持向量机的数据多输入单输出回归预测预测效果基本介绍程序设计参考资料 预测效果 基本介绍 Matlab基于OOA-LSSVM鱼鹰算法…

Python||五城P.M.2.5数据分析与可视化_使用华夫图分析各个城市的情况(下)

目录 沈阳市的空气质量 华夫图 柱状图 总结 五城P.M.2.5数据分析与可视化——北京市、上海市、广州市、沈阳市、成都市,使用华夫图和柱状图分析各个城市的情况 沈阳市的空气质量 华夫图 import numpy as np import pandas as pd import matplotlib.pyplot as plt …

Servlet(java web基础篇)

Servlet(java web基础篇) Servlet是Java提供的一门动态web资源开发技术,不同的用户访问看到的效果不一样。Servlet是lavaEE规范之一,其实就是一个接口,将来我们需要定义Servlet类实现Servlet:接口,并由web服务器运行S…

TorchVision的使用方法、更改默认路径

TorchVision的使用 1. 转换和增强图像 torchvision.transforms.v2 参数作用Resize将输入调整为给定大小RandomShortestSize随机调整输入的大小RandomResize随机调整输入的大小RandomCrop在随机位置裁剪输入RandomResizedCrop裁剪输入的随机部分并将其调整为给定大小RandomIoU…

Java生成微信小程序二维码的方式有哪些?

大家好我是咕噜美乐蒂,很高兴又见面啦!今天我们来谈一下如何使用Java生成微信小程序二维码,有哪些方式方法呢? 生成微信小程序二维码是开发微信小程序时的常见需求之一。在Java中,我们可以使用多种方式来生成微信小程…

《最新出炉》系列初窥篇-Python+Playwright自动化测试-11-playwright操作iframe-上篇

1.简介 原估计宏哥这里就不对iframe这个知识点做介绍和讲解了,因为前边的窗口切换就为这种网页处理提供了思路,另一个原因就是虽然iframe很强大,但是现在很少有网站用它了。但是还是有小伙伴或者童鞋们私下问这个问题,那么宏哥就…

【后端开发】正向代理与反向代理

正向代理 正向代理(forward proxy):是一个位于客户端和目标服务器之间的服务器(代理服务器),为了从目标服务器取得内容,客户端向代理服务器发送一个请求并指定目标,然后代理服务器向目标服务器转交请求并将…

【日志记录】——主MCU 通过私有协议更新从MCU程序固件

一:需求分析 在一些系统较为复杂的嵌入式设备中,往往不止一片MCU或者处理模块,通常为一片主MCU负责应用逻辑处理和对外网络通信,其他从MCU负责实时采集处理高频数据,在设备运营过程中,往往伴随新需求或者bu…

动态内容推荐系统PHP代码

这个系统旨在根据用户行为和偏好,动态地向用户推荐内容。这样的系统可以应用于新闻网站、社交媒体平台、电子商务网站等多种场景,以提升用户体验和参与度。 ### 功能概述 系统将基于用户的浏览历史、点击行为和时间花费等数据来评估用户的兴趣点&#…

BUUCTF-Real-[ThinkPHP]2-Rce1

任意代码执行漏洞 ThinkPHP 2.x版本中,使用preg_replace的/e模式匹配路由: $res preg_replace((\w).$depr.([^.$depr.\/])e, $var[\\\1\]"\\2";, implode($depr,$paths)); 导致用户的输入参数被插入双引号中执行,造成任意代码执行…

Open CASCADE学习|拓扑变换

目录 平移变换 旋转变换 组合变换 通用变换 平移变换 TopoDS_Shape out;gp_Trsf theTransformation;gp_Vec theVectorOfTranslation(0., 0.125 / 2, 0.);theTransformation.SetTranslation(theVectorOfTranslation);BRepBuilderAPI_Transform myBRepTransformation(out, th…

go 中的范型

泛型是随着Go 1.18版本发布的。它基本上意味着参数化的类型,也就是说,它允许程序员在写代码时,类型可以稍后指定,因为类型在当时并不相关。换句话说,在编写一些代码时,你不提供数值的类型。这些类型的值会在…

Leetcode刷题笔记题解(C++):36. 有效的数独

思路一:暴力破解,两个二维数组记录行、列对应的数字出现的次数,比如rows[i][index]表示的数字index在i行出现的次数,三维数组记录每个块中对应数字出现的次数,比如boxes[i/3][j/3][index]表示的数字index在[i/3][j/3]个…

校园墙表白墙系统uniapp微信小程序

配置文件 (自动编号、配置参数名称、配置参数值); 前端开发:vue 语言:javapythonnodejsphp均支持 运行软件:idea/eclipse/vscode/pycharm/wamp均支持 框架支持:Ssm/django/flask/thinkphp/springboot/springcloud均支持 数据库 mysql 数据库工具&#x…

定时器 Timer(超详细模拟实现)

目录 一、定时器 1.定时器概述 2.Java标准库提供的定时器类 3.定时器代码样例 二、实现 1.实现思路 2.代码实现 2.1纯享版 2.2注释版 3.代码解析(超详细) 3.1描述类MyTimerTask ①构造:MyTimerTask(Runnable runnable, long delay&#xff…

如何使用本地私有NuGet服务器

写在前面 上一篇介绍了如何在本地搭建一个NuGet服务器, 本文将介绍如何使用本地私有NuGet服务器。 操作步骤 1.新建一个.Net类库项目 2.打包类库 操作后会生成一个.nupkg文件,当然也可以用dotnet pack命令来执行打包。 3.推送至本地NuGet服务器 打开命…

vue3 封装WebSocket(直接复制)

创建文件WebSocket.js 只有基本的功能 import { ref } from vue; import store from "/store";export default function useWebSocket(url) {const messagesData ref([]);// 创建WebSocket连接和相关方法const socket new WebSocket(url);socket.onopen () >…

《计算机网络简易速速上手小册》第6章:网络性能优化(2024 最新版)

文章目录 6.1 带宽管理与 QoS - 让你的网络不再拥堵6.1.1 基础知识6.1.2 重点案例:提高远程办公的视频会议质量实现步骤环境准备Python 脚本示例注意事项 6.1.3 拓展案例1:智能家居系统的网络优化实现思路Python 脚本示例 6.1.4 拓展案例2:提…