回复:双整如何变整?

shine

  • 帖子

    8803
  • 精华

    39
  • 被关注

    157

论坛等级:至圣

注册时间:2003-06-06

普通 普通 如何晋级?

发布于 2012-01-06 23:51:08

10楼

quote:以下是引用菜鸟hello在2012-01-06 18:23:20的发言:
quote:以下是引用KAPOK在2012-01-06 00:03:05的发言:
1.如果值在-32768~+32767之间,你直接取低字即可;
2.使用指令RND、RND-、RND+、TRUNC可以实现,但最好保证值在-27648~+27648之间!


取低字是不行的哦,符号位在最高位呢,正整数是OK的,如果数值是负整数,结果是错误的。
判断最高位然后再去低字,如果数值在-32768~32767之间。
楼主有没有试过,DI_BCD ; BCD_I 如果是16位的应该是没问题的,不知道32位啥结果?

补习计算机原理去。


to:LZ
只要数值的复位在-32768~32767之间,直接move就好了。如果超过这个范围,也不可能用一个字来表示了。
你是嫌move指令太简单了,觉得不过瘾?
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54616条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。