请高手帮忙!用C51对单片机存储单元中的一位进行赋值,例如:给20H中的一位赋值,把P1.0口的值赋给20H.0

作者&投稿:威嘉 (若有异议请与网页底部的电邮联系)
单片机编程题:查找内部RAM的20H~50H单元中个位出现6的次数将结果存入R1中,跪求单片机大侠帮忙~

;
ORG 0000H
MOV R0, #20H
MOV R1, #0
LOOP:
MOV A, @R0 ;取来一个字节
MOV B, #10
DIV AB ;除以10
XCH A, B ;取来个位
CJNE A, #06H, NEXT ;不等于6则转移
INC R1 ;等于6则加一
NEXT:
INC R0
CJNE R0, #51H, LOOP
SJMP $
END

B、C、D
汇编程序和C语言源程序也属于应用软件,
但汇编语言和C语言不属于应用软件,属于支持软件。

下面内容可能对你的帮助:
1、计算机软件分类代码表
●10000 系统软件
11000 操作系统12000 系统实用程序13000 系统扩充程序14000 网络系统软件19900 其他系统软件
●30000 支持软件
31000 软件开发工具32000 软件评测工具33000 界面工具34000 转换工具34000 转换工具35000 软件管理工具36000 语言处理程序37000 数据库管理系统38000 网络支持软件39900 其他支持软件
●60000 应用软件
61000 科学和工程计算软件61500 文字处理软件62000 数据处理软件62500 图形软件63000 图象处理软件64000 应用数据库软件65000 事务管理软件65500 辅助类软件66000 控制类软件66500 智能软件67000 仿真软件67500 网络应用软件68000 安全与保密软件68500 社会公益服务软件69000 游戏软件69900 其它应用软件

2、计算机软件适用的国民经济行业代码表
0000 (依据1992-004号计算机软件登记公告的规定,若因软件适用的国民经济行业范围广无法对饮某一行业时,可选择该项)

0100 农业0200 林业0300 畜牧业0400 渔业0500 农、林、牧、渔服务业0600 煤炭开采和洗选业0700 石油和天然气开采业0800 黑色金属矿采选业0900 有色金属矿采选业1000 非金属矿采选业1100 其他采矿业1300 农副食品加工业1400 食品制造业1500 饮料制造业1600 烟草制品业1700 纺织业1800 纺织服装、鞋、帽制造业1900 皮革、毛皮、羽毛(绒)及其制品业2000 木材加工及木、竹、藤、棕、草制品业2100 家具制造业2200 造纸及纸制品业2300 印刷业和记录媒介的复制2400 文教体育用品制造业2500 石油加工、炼焦及核燃料加工业2600 化学原料及化学制品制造业2700 医药制造业2800 化学纤维制造业2900 橡胶制造业3000 塑料制品业3100 非金属矿物制品业3200 黑色金属冶炼及压延加工业3300 有色金属冶炼及压延加工业3400 金属制品业3500 通用设备制造业3600 专用设备制造业3700 交通运输设备制造业3900 电气机械及器材制造业4000 通信设备、计算机及其他电子设备制造业4100 仪器仪表及文化、办公用机械制造业4200 工艺品及其他制造业4300 废弃资源和废旧材料回收加工业4400 电力、热力的生产和供应业4500 燃气生产和供应业4600 水的生产和供应业4700 房屋和土木工程建筑业4800 建筑安装业4900 建筑装饰业5000 其他建筑业5100 铁路运输业5200 道路运输业5300 城市公共交通业5400 水上运输业5500 航空运输业5600 管道运输业5700 装卸搬运和其他运输服务业5800 仓储业5900 邮政业6000 电信和其他信息传输服务业6100 计算机服务业6200 软件业6300 批发业6500 零售业6600 住宿业6700 餐饮业6800 银行业6900 证券业7000 保险业7100 其他金融活动7200 房地产业7300 租赁业7400 商务服务业7500 研究与试验发展7600 专业技术服务业7700 科技交流和推广服务业7800 地质勘查业7900 水利管理业8000 环境管理业8100 公共设施管理业8200 居民服务业8300 其他服务业8400 教育8500 卫生8600 社会保障业8700 社会福利业8800 新闻出版业8900 广播、电视、电影和音像业9000 文化艺术业9100 体育9300 中国共产党机关9400 国家机构9500 人民政协和民主党派9600 群众团体、社会团体和宗教组织9700 基层群众自治组织9800 国际组织

C51有一些地址支持位寻址,可以直接进行位操作,不同51MCU的地址段不一样,你查一下相应的datasheet.

逻辑是这样的
先把
20H.0置成1,然后用P1.0 & 20H.0后的值赋给20H.0。

用C51对单片机存储单元中的一位进行赋值

sbit P1_0=P1^0;
bit DataBit @0x20;

DataBit=P1_0;

MOV C, P1^0;
SETB 20H.0;
ANL C, 20H.0;
MOV 20H.O ,C;


请高手帮忙!用C51对单片机存储单元中的一位进行赋值,例如:给20H中的一...
C51有一些地址支持位寻址,可以直接进行位操作,不同51MCU的地址段不一样,你查一下相应的datasheet.

用c51单片机按下4*4矩阵按键,数码管显示0-F,能正常显示,只是0号和7...
\/ 类型:矩阵键盘。现象:按下键盘后,数码管显示相应的数字0-F 【声明】此程序仅用于学习与参考,引用请注明版权和作者信息!\/ include<reg52.h> \/\/52单片机头文件,一般不要改动,里面包含特殊功能寄存器的定义 define uchar unsigned char \/\/将unsigned char定义为uchar,简化输写。提高编程速度 d...

keil c51编写流水灯程序出现undefined identifier 求高手帮忙啊
unsigned char led8[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};unsigned char led81[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};这些移到include的下面 另外 j跟 k要定义

求C51汇编语言高手帮忙,执行程序时显示第四行语句LJMP IINT1为undef...
LJMP MAIN ORG001BH ;定时器T1中断入口 LJMPIINT1 ORG0100H ;主程序入口 ;在此处编写主程序。;……IINT1:;在此处编写中断程序。;……END

C51单片机高手帮帮忙!
define SYSCLK 22118400 \/\/晶振频率,请按需修改 define BAUDRATE 9600 \/\/串口波特率,请按需修改 \/\/ UART [0xff][0xff][XY][ZZ]\/\/[0xff][0xff]:指令前缀 \/\/[XY]:X:端口号;Y位地址 \/\/[ZZ]:点亮时间,单位(秒)\/\/例:P1.2点亮5秒:[0xff][0xff][0x12][0x05]\/\/...

请高手帮忙解释C51语句含义
如果是p1=(unsigned char)(k=k>>8);的话,k就和p1一样,都为0,因为k=0000,0000,0000,0001(二进制),右移8位变为0000,0000,0000,0000(二进制),为十进制的0,ASCII为NULL;0000,0000,0000,0001(k)与0000,0000,1111,1111(0XFF)取“与”为0000,0000,0000,0001,故k=1,p1为ASCII为...

请各位C51编程高手帮忙,具体问题如下描述:
首先电路图是有很多问题的,不过大概明白了你的意思,P1口的5个开关“1”代表开关按下,P2口的5个LED送“1”点亮,以下程序就是按这个条件编写的。KEYVALEQU 30H ORG 0000H SJMP START ORG 0050H START:MOV PCON,#80H MOV SCON,#50H;8位数据,可变波特率 MOV TMOD,#21H;设定定时器1为8位自动...

C51单片机汇编解析问题。高手帮忙啊! 我不懂中断处为什么要这么写呢...
,所以当每发生中断一次时我们就把这过去的时间累计算一下比一下(因只用定时器这时间长度是不够的,所以我们还要再利用软件计数来做累加定时后才够用的),所以在中断中就要完成这累加的玩意,在平时我们就只让这程序在主程序中空运行(和只向外送显示数据的)等待这时间的到来。本这中断入口不是你想...

请高手用C51帮忙写个用串口和一个按键控制一个LED亮灭的程序
看你也是新手,花5分钟给你写一个参考程序,自己慢慢研究,这个程序你可以直接拿去用。include "REG52.H"sbit LED_01 = P1^1;sbit Key_01 = P2^1;unsigned char MAIN_FLG;unsigned char MAIN_BUF;\/ 配置USART串口波特率初始化 \/ void SysemInit(void){ TMOD = 0x20;TH1 = 0xFD...

...SYMBOL”的错误!(程序如下),请高手帮帮忙!!
可能原因:你没有选好芯片(即目标设备),编译器会根据你选的芯片,进行编译连接。P0,P1口都是在一个预定义文件里定义过的。也有可能是你的这个预定义文件丢失了。造成编译时,不认识P0,P1。

芦溪县19423002943: 请高手帮忙!用C51对单片机存储单元中的一位进行赋值,例如:给20H中的一位赋值,把P1.0口的值赋给20H.0 -
宿昂清肝: 用C51对单片机存储单元中的一位进行赋值 sbit P1_0=P1^0; bit DataBit @0x20; DataBit=P1_0;

芦溪县19423002943: 51单片机键盘输入的数据要存储在一个数组里面,用C51怎么写? -
宿昂清肝: 例如:P1是按键,arr[4]4个数值 arr[0]=P1;后面同.

芦溪县19423002943: c51单片机怎样存储大量数据? -
宿昂清肝: c51单片机存储大量数据方法:存储的只能是8位而已;16位分开来,分出高8位和低8位这样来存储;51单片机是对所有兼容Intel 8031指令系统的单片机的统称.该系列单片机的始祖是Intel的8031单片机,后来随着Flash rom技术的发展,8031单片机取得了长足的进展,成为应用最广泛的8位单片机之一,其代表型号是ATMEL公司的AT89系列,它广泛应用于工业测控系统之中.

芦溪县19423002943: 编程序:片内RAM的50H和60H两单元的存储数如果相同,70H号单元存入1,否则存入0. 用C51单片机编的 求高手 -
宿昂清肝: 楼上的C语言没问题.汇编如下: MOV A,60H CJNE A,70H,JP0 MOV 70H,1 SJMP JP1 JP0: MOV 70H,0 JP1: SJMP $

芦溪县19423002943: 求高手帮做C51单片机编程
宿昂清肝: void main(void) { init_devices(); WDR(); b_n=1; b_s=2; b_v=1215; b_a=20; b_t=34; tims1=0; tims2=0; PORTA=0x00; ini_lcd(); cls_lcd(); disp_main(); disp_js(1); disp_zt(4); disp_dy(0); disp_dl(0); disp_wd(31); do{ WDR(); scan_key(); delay_ms(1); }...

芦溪县19423002943: C51单片机数组存到内部flash -
宿昂清肝: 数组是可以存在FLASH中的,但是这样并不可行,8051单片机主要是片内没有EEPROM,一般在FLASH中存储一些掉点不丢的东西,如果存数组的话,首先得写一个读写FLASH的函数专门去存放它,这样本身就比较小的RAM,更加不够用了. 不过8051单片机,一般都有个DATA区和一个XDATA区,我估计你是把所有的变量全部定义在DATA区了,才导致DATA区溢出的问题,你可以试着这样定义你的数组: xdata unsigend char ARRAY[128]; 试试这样可行不,或者你已经这样试过了的话,那就换芯片吧.

芦溪县19423002943: keil C51单片机存储模式有哪些 -
宿昂清肝: KEIL51是个开发软件喔,xxC51是单片机如:at89c51,内部flash存储固定程序和数据,掉电可以保存,内部ram存储临时数据,掉电消失.

芦溪县19423002943: 用C51单片机带存储播放功能的简易电子琴设计 要求如图 -
宿昂清肝: //本程序的单片机晶振采用11.0592M#include sbit speaker=P1^2; unsigned char timer0h,timer0l,time;//世上只有妈妈好数据表 code unsigned char sszymmh[]={ 6,2,3, 5,2,1, 3,2,2, 5,2,2, 1,3,2, 6,2,1, 5,2,1,6,2,4, 3,2,2, 5,2,1, 6,2,1, 5,2,2, 3,2,2, 1,2,1,...

芦溪县19423002943: c51语言编写,串口通讯程序,实现AT89S52单片机把一个整型数组数据,发送给VB -
宿昂清肝: 做一个整形到ASCII的转换函数.如果你要发送的数据最大值可以确定,可以根据最大值定义一个ASCII数组,数组的每一个单元存放整形数据的一位.发送前先对发送整形数组里的单元转换成ASCII数组,然后再按照通用的发送函数进行发送....

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网