问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

51单片机 用汇编语言怎么编程:几个有符号数的比较大小

发布网友 发布时间:2022-04-29 07:57

我来回答

3个回答

热心网友 时间:2023-10-13 08:13

51单片机中,没有专门的有符号数比较指令,只能通过一些变通的方法来实现,比如:
比较30H和40H中有符号数的大小,结果放在R2中,大于则为1,等于为0,小于为128:
CMPDAT:
MOV A,30H
JB ACC.7,CMPF1
MOV B,A
MOV A,40H
JB ACC.7,CMPZ2 ;30H正,40H负所以30H>40H
CJNE A,B,CMPZ1 ;均为正,比较大小
MOV R2,#0
RET
CMPZ1:
JC,CMPZ2
CMPZ11:
MOV R2,#128
RET
CMPZ2:
MOV R2,#1
RET
CMPF1:
ANL A,#7FH
MOV B,A
MOV A,40H
JNB ACC.7,CMPF3 ;30H负,40H负
SJMP CMPZ11 ;30负,40H正,所以30H<40H
CMPF3:
ANL A,#7FH
CJNE A,B,CMPF10 ;两个均为负数
MOV R2,#0
RET
CMPF10:
JC CMPZ2 ;30H<40H(负数小者大)
SJMP CMPZ11 ;30H>40H

热心网友 时间:2023-10-13 08:13

51单片机中,没有专门的有符号数比较指令,只能通过一些变通的方法来实现,比如:
比较30H和40H中有符号数的大小,结果放在R2中,大于则为1,等于为0,小于为128:
CMPDAT:
MOV A,30H
JB ACC.7,CMPF1
MOV B,A
MOV A,40H
JB ACC.7,CMPZ2 ;30H正,40H负所以30H>40H
CJNE A,B,CMPZ1 ;均为正,比较大小
MOV R2,#0
RET
CMPZ1:
JC,CMPZ2
CMPZ11:
MOV R2,#128
RET
CMPZ2:
MOV R2,#1
RET
CMPF1:
ANL A,#7FH
MOV B,A
MOV A,40H
JNB ACC.7,CMPF3 ;30H负,40H负
SJMP CMPZ11 ;30负,40H正,所以30H<40H
CMPF3:
ANL A,#7FH
CJNE A,B,CMPF10 ;两个均为负数
MOV R2,#0
RET
CMPF10:
JC CMPZ2 ;30H<40H(负数小者大)
SJMP CMPZ11 ;30H>40H

热心网友 时间:2023-10-13 08:14

设内部RAM中的30H和31H单元中有两个带符号数,求其中的大数,放在32H单元中。
;
MOV 32H, 30H ;先取一个放好.
MOV A, 30H
CLR C
SUBB A, 31H ;(30H)-(31H)
JNB ACC.7, ZZZ ;差为正数则转移.
JB OV, _END ;负、且溢出转至结尾.
SJMP XXX ;否则去存31H
ZZZ:
JNB OV, _END ;差为正、且无溢出转至结尾.
XXX:
MOV 32H, 31H
_END:
SJMP $

END

热心网友 时间:2023-10-13 08:14

设内部RAM中的30H和31H单元中有两个带符号数,求其中的大数,放在32H单元中。
;
MOV 32H, 30H ;先取一个放好.
MOV A, 30H
CLR C
SUBB A, 31H ;(30H)-(31H)
JNB ACC.7, ZZZ ;差为正数则转移.
JB OV, _END ;负、且溢出转至结尾.
SJMP XXX ;否则去存31H
ZZZ:
JNB OV, _END ;差为正、且无溢出转至结尾.
XXX:
MOV 32H, 31H
_END:
SJMP $

END

热心网友 时间:2023-10-13 08:14

SUBB A,B
JNB CY ,D0 ;D0是A>B

热心网友 时间:2023-10-13 08:14

SUBB A,B
JNB CY ,D0 ;D0是A>B
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
梦见和同性发生关糸了 梦见和同性朋友发生亲密关系 学生党如何科学护肤? 学生党该怎么基础护肤? 有什么美容护肤的技巧适合学生党? 怎么@全部成员啊? 新洲摩尔城一楼小吃租金多少 武汉王家湾有哪些广场 你好 请问 晚上6点开始 学瑜伽 可以吗? 因为我想在下班时间去 锻炼锻 ... 电脑联网有哪些条件台式电脑无线上网需要具备哪些条件 汇编语言如何编&quot;在D1开始的单元格存放3个无符号数,将3个数比较后由大到小排序到D2开始的单元格 单片机用汇编语言怎样判断几个数的大小? 汇编语言比较三个数的大小,为什么不对 编写汇编程序比较3个数的大小 最大数存入MAX单元中 最小数存入MIN单元中 要求原创 原创 汇编语言看看这段有什么问题 三个有符号数比较大小将最大的放在MAX变量里 汇编语言程序问题:3个数比较. 单片机实验中,怎么用汇编比较大小? 用汇编语言比较三个位数的大小,如果三个数相等 输出等号,如果三个不同 按从大到小的顺序输出,急用 !! 用汇编语言编写程序,实现3个数比较大小,并从高到低输出结果。 汇编语言比较三个数大小 怎样用汇编语言实现比较三个数的大小? 中国人寿保险,690元套餐中包含什么险种? vivoz7和荣耀30青春版对比? 华为nova2s手机浅艾蓝颜色的适合男的用吗 中国人寿保险代码681/682/781/782这四组代码代表什么险? 华为上滑变深紫色怎么办? 想送女朋友一部手机。麻烦大家给点推荐。附上大概价格。谢谢! 华为荣耀x10。你好,我想问一下。就是我以前手机上紫色的东西,今天都变成粉色了,是怎么回事? 华为手机 这两天突然会出现淡紫色 一会又消失 紫色截屏时的图 等正常时紫色也会没有 当though引导从句时,从句需要倒装吗 怎样用汇编语言的编写“三个数求最大的一个数”的程序?大哥大姐进来看看啊! 微机原理3个数比较大小的程序 用8086汇编语言编写数的比较 用汇编语言求三个数的最大值的程序怎么写 i5 12400能用5年吗 i5能用多少年 英特尔第七代酷睿i5还能坚持多久,以后能玩gta6吗 黑松露营养粉多少钱一盒儿 宏基笔记本(4741G 酷睿i5)的新电池,充满电可以用多长时间? I5处理器多久会淘汰 i5 6500能用几年? 什么是白松露?为什么说它比黄金还贵?有什么价值? 如果CPU(intel core i5 6200U)长期工作在占用100%睿频上,能用几年?有啥影响? 西餐烹饪原料中松露为什么那么贵? 现在i5处理器 能跑几年,我要制图 松露是什么味道? i5的处理器还可以用多久,多久会被淘汰 黑松露粉能兑水喝吗? i5的处理器还能主流多久!? 比黄金还贵!我们来聊聊松露怎么吃才不浪费?