社区
汇编语言
帖子详情
进位到dx怎么写?
baibai10
2009-04-03 03:44:24
程序的作用是计算ax + bx,结果放dx:ax。
但如果计算 32767 + 5,答案是提示溢出。
不能用adc,只能用add。
提示说 add ax,bx后
把符号位放到dx里,我不明白这里怎么写?
感觉好像是一行的程序,就是没想出来。
...全文
140
10
打赏
收藏
进位到dx怎么写?
程序的作用是计算ax + bx,结果放dx:ax。 但如果计算 32767 + 5,答案是提示溢出。 不能用adc,只能用add。 提示说 add ax,bx后 把符号位放到dx里,我不明白这里怎么写? 感觉好像是一行的程序,就是没想出来。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
cnzdgs
2009-04-03
打赏
举报
回复
看不懂你的问题描述,是有符号运算还是无符号运算?讲清楚哪些是要实现的,有哪些限制。
Jarrys
2009-04-03
打赏
举报
回复
[Quote=引用 2 楼 dididu1515 的回复:]
用Debug.exe调试,步骤
-a100
mov ax,7fff
mov bx,5
add ax,bx
-g=100 108
AX=8004H
没溢出啊!
[/Quote]
of=ov
byteh
2009-04-03
打赏
举报
回复
路过,学习
BAYNPU
2009-04-03
打赏
举报
回复
例如做X-Y,X和Y为存放于X、Y单元的16位有符号操作数。若溢出,则转移到overflow处理.
mov ax,X
sub ax,Y
jo overflow
..
;如果没有溢出,结果正确.
overflow:...
;做溢出处理.
BAYNPU
2009-04-03
打赏
举报
回复
这样编写:
0AF3:0100 mov ax,7fff
0AF3:0103 mov bx,5
0AF3:0106 add ax,bx
0AF3:0108 pushf
0AF3:0109 pop dx
0AF3:010A
huayangcvj
2009-04-03
打赏
举报
回复
JO就是溢出时转移即转移条件是OF=1
当没有溢出时不转移,继续执行下面的程序
可以用JO来判断运行结果是否溢出
上面的问题有点含糊
希望我对JO的分析,能帮助你解决上面的问题
hjjdebug
2009-04-03
打赏
举报
回复
问题描述不清,白看了!
dididu1515
2009-04-03
打赏
举报
回复
用Debug.exe调试,步骤
-a100
mov ax,7fff
mov bx,5
add ax,bx
-g=100 108
AX=8004H
没溢出啊!
linweipeng
2009-04-03
打赏
举报
回复
3楼正解。
baibai10
2009-04-03
打赏
举报
回复
还有jo怎么用呢?
FPGA之
进位
逻辑
进位
逻辑(Carry Logic)Slice 中除了LUT,寄存器,触发器,锁存器外,还提供了专用的快速超前
进位
逻辑,可以在slice 中执行快速算术加法和减法。7系列FPGA CLB具有两个独立的
进位
链,如图下所示,1个CLB 中的2个Slice 各有1个CIN.对于每个bit,都有一个
进位
多路复选器(MUXCY)和专用的XOR门,用于用选定的
进位
位加/减操作数。-CO3连接到 Slice 的COUT输出以通过级联多个Slice 形成更长的
进位
链-创建加法器/累加器。-
进位
链的第一位的CIN。
实现
进位
的加法算法
DATA SEGMENTDATA1 DB 37H,36H,35H,34H,35H,0 ;第一个数据(作为被加数)DATA2 DB 0,38H,37H,36H,35H,0 ;第二个数据(作为加数)MES1 DB +,$MES2 DB =,$MES3 DB ,$MES4 DB 0DH,$MES5
汇编语言——将
DX
,AX组成的32位数逻辑左移3位
汇编语言——将
DX
,AX组成的32位数逻辑左移3位
8086汇编(5、
进位
加法)
废话不多说,直接开始
写
代码。普通指令,以及编程思想我就不介绍了。 寄存器大小位16位能存的最大值为0FFFFH=65535,那么如果相加的数值超过这个数产生了
进位
,那么寄存器不够存了,此时我们就需要用到
进位
加法指令 adc(add carry)
进位
加法在两数相加时会带上
进位
,就是我们平时的算术计算时的算法一样 FFFFH+1=10000H ax=0000
进位
标志 CF=1 寄存器不够存我们可以把数据存哪里? 在加一个寄存器来存也可以 此时我们可以将低16位存ax 高16位存
dx
中那么如果两个寄存器还
微机原理ADC
DX
,0是什么意思
设
DX
初值为0000h, AX 初值为 FFFF h ,即65535d, 执行指令 ADD AX,9 所得和值为65544d, 此时AX 溢出,终值为0008h,
进位
标志为1 ADC
DX
,0 作用是将
进位
标志值1加入到
DX
。
DX
存放和值的高16位,AX存放和值的低16位,
DX
AX
DX
与AX共同保存的和值 0001h 00008h 10008h ,即65544d ...
汇编语言
21,500
社区成员
41,617
社区内容
发帖
与我相关
我的任务
汇编语言
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
复制链接
扫一扫
分享
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章