一个在S7-300中的乘法指令 点击:1583 | 回复:5



wang_039

    
  • 精华:0帖
  • 求助:15帖
  • 帖子:44帖 | 115回
  • 年度积分:0
  • 历史总积分:275
  • 注册:2010年12月24日
发表于:2012-10-04 21:36:22
楼主
求助帖5分-已结帖

  如图。这是个有符号整数的乘法,正确的结果已经超过了16位宽。于是溢出。分析一下得到-4的原因,以及没有输出的原因。(书上说如果溢出保留底16位)

  32767×4=131068



楼主最近还看过



wyb2866255---王者之师

  • 精华:57帖
  • 求助:0帖
  • 帖子:148帖 | 2872回
  • 年度积分:1
  • 历史总积分:31450
  • 注册:2010年7月01日
发表于:2012-10-04 23:01:37
1楼

   MUL_I 为有符号字整数乘法,其对外显示是有符号字整数,字存储器可存储数的范围为0~65535,其显示为有符号的字整数范围为 -32768~+32767。其:0~+32767=0~7FFF,-1~-32768=>FFFF~8000。

 数32767×4=131068=1_FF FC其最高位1溢出,保留字存储器的16位的内容=FFFC,而数FFFC转换为有符号的整数=-4

阿水--王者之师

  • 精华:23帖
  • 求助:347帖
  • 帖子:1611帖 | 22281回
  • 年度积分:37
  • 历史总积分:98482
  • 注册:2007年3月22日
发表于:2012-10-05 10:21:07
2楼
过来学习,那实际超出的当溢出,余下部分还是能正常显示出来吧 ?

王道火山--纵横军团

  • 精华:2帖
  • 求助:5帖
  • 帖子:86帖 | 1878回
  • 年度积分:0
  • 历史总积分:7858
  • 注册:2012年1月11日
发表于:2012-10-05 10:32:33
3楼

1楼 解释的很清楚了!

正解!

江湖走走--原创军团

  • [版主]
  • 精华:30帖
  • 求助:7帖
  • 帖子:836帖 | 7833回
  • 年度积分:193
  • 历史总积分:46108
  • 注册:2001年2月15日
发表于:2012-10-05 16:23:14
4楼

学习了,这个指令很少用,一楼解释的真好!

wang_039

  • 精华:0帖
  • 求助:15帖
  • 帖子:44帖 | 115回
  • 年度积分:0
  • 历史总积分:275
  • 注册:2010年12月24日
发表于:2012-10-05 21:38:34
5楼

  "而数FFFC转换为有符号的整数=-4",我再想想。

  有溢出就不给RLO了吗?


热门招聘
相关主题

官方公众号

智造工程师