我这有一个MCS-51单片机编程题(用汇编语言)急求答案。各位哥哥姐姐帮忙啊!题目见下边

在片内RAM20H单元开始的区域中存放有30个8位有符号数,编程实现分离正数和负数,将正数放到外部存储区21H单元开始的区域,20H单元存放正数的个数,将其中负数放到外部... 在片内RAM20H单元开始的区域中存放有30个8位有符号数,编程实现分离正数和负数,将正数放到外部存储区21H单元开始的区域,20H单元存放正数的个数,将其中负数放到外部存储区51H单元开始的区域,50H单元存放正数的个数,对于分离出来的正数作如下处理,将小于100的数改成压缩BCD码的表示形式,其它数据全部改成AAH,经过处理以后的数据仍然存放在原地址单元。
打错字了,50H单元存放负数的个数。
展开
 我来答
意法半导体(中国)投资有限公司 2023-08-25
展开全部
意法半导体致力于引领单片机技术和产品的创新,推动生态系统的建设,为用户提供满意的产品和技术服务。意法半导体单片机产品线拥有业界宽广、极具创新力的32位产品系列 – STM32,覆盖超低功耗、超高性能方向,同时兼具一流的市场竞争力。STM32是ARM Cortex内核单片机和微处理器市场和技术方面的佼佼者,目前提供16大产品线 (F0, G0, F1, F2, F3, G4, F4, F7, H7, MP1, L0, L1, L4, L4+,L5, WB),超过1000个型号。STM32产品广泛应用于工业控制、消费电子、物联网、通讯设备、医疗服务、安防监控等应用领域,其优异的性能进一步推动了生活和产业智能…
Real喵
2010-11-21 · 超过14用户采纳过TA的回答
知道答主
回答量:31
采纳率:0%
帮助的人:31万
展开全部
乱写的,凑合看吧:
ORG 2000H
CLR A
MOV R7,#0
MOV R6,#0
MOV R5,#30
MOV R4,#20
MOV R3,#50H
MOV R2,#20H
LOOP1: MOV A,@R4
JNB ACC.7,LOOP2 ;判断符号数的正负
INC @R3
MOVX @R3,A ;负数存入外存中51H开始的单元中
INC @R7 ;负数个数+1
LOOP2: INC @R2
MOVX @R2,A ;正数存入外存中21H开始的单元中
INC @R6 ;正数个数+1
CJNE A,#64H,LOOP3
SJMP LOOP4
LOOP3: JNC LOOP4
MOV B,#0AH ;小于100的数改成压缩BCD码送还至原地址单元
DIV AB
SWAP A
ADD A,B
MOV @R4,A
LOOP4: MOV @R4,#0AAH ;不小于100的数改为AAH送还至原地址单元
INC @R4
DJNZ R5,LOOP1
MOV DPTR,#20H ;正数的个数存放至外存区20H单元中 MOV A,@R6
MOVX @DPTR,A
MOV DPTR,#50H ;负数的个数存放在外存区50H单元中
MOV A,@R7
MOVX @DPTR,A
SJMP $
上边的几个回答- -...此程序若还有错误请及时联系我修改,谢谢先!
另:各位参考的童鞋切记要加相关注释,多少做点改动,被老师认为雷同的渣就概不负责了哈。
So,建兄,渣就不多解释了。
意法半导体(中国)投资有限公司
2020-01-15 广告
单片机(Microcontrollers)是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制... 点击进入详情页
本回答由意法半导体(中国)投资有限公司提供
赵贺彩
2010-11-16 · TA获得超过201个赞
知道答主
回答量:78
采纳率:0%
帮助的人:32.1万
展开全部
LOOP4:MOV R5,#30
LOOP2:MOV A,20H
JNB ACC.7,LOOP1
MOVX @R1,A
MOV 51#,@R1
INC R6
LOOP1:MOVX R0,A
MOV 21#,@R0
INC R7
CJNE A,#100,LOOP3
JC LOOP3
HBCD: MOV B,#100
DIV AB
MOV R3,A
MOV A,#10
XCH A,B
DIV AB
SWAP A
ADD A,B
RET
LOOP3:MOV A,AAH
DJNZ R5,LOOP4
MOV 20H,R6
MOV 50H,R7
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
kimff8
2010-11-16 · TA获得超过3277个赞
知道大有可为答主
回答量:5481
采纳率:0%
帮助的人:2339万
展开全部
离问题结束还有 14 天 23 小时
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
做而论道
高能答主

2010-11-17 · 把复杂的事情简单说给你听
知道大有可为答主
回答量:3.2万
采纳率:86%
帮助的人:8816万
展开全部
再明确一下:
将正数放到外部存储区21H单元开始的区域,20H单元存放“正数”的个数,
将负数放到外部存储区51H单元开始的区域,50H单元存放“正数”的个数,
--50H单元应该是存放“负数”的个数,对吧?
对于分离出来的正数作如下处理,将小于100的数改成压缩BCD码的表示形式,其它数据全部改成AAH,经过处理以后的数据仍然存放在原地址单元。
--“原地址单元”是指“片内RAM20H开始的单元”?
--还是“外部存储区21H单元开始的区域”?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式