计算机系统

1IEEE754标准提供了以下4种舍入模式,其中平均误差最小的是

链接:https://www.nowcoder.com/questionTerminal/98b6bdc485b6436db235ff679d3906ca?orderByHotValue=1&page=1&onlyReference=false
来源:牛客网

2.一个 C 语言程序在一台 32 位机器上运行。程序中定义了三个变量 x 、 y 和 z ,其中 x 和 z 为 int 型, y 为 short 型。当 x=127 , y= - 9 时,执行赋值语句 z=x+y 后, x 、 y 和 z 的值分别是() 。

  • Cx=0000007FH,y=FFF7H,z=FFFF0076H
    D x=0000007FH,y=FFF7H,z=00000076H
    
    C 语言中的整型数据为补码形式, int 为 32 位, short 为 16 位,故 x 、 y 转换成十六进制为 0000007FH 、 FFF7H 。执行 z=x+y 时,由于 x 是 int 型, y 为 short 型,需将短字长数据转换成长字长数据,称之为“符号扩展”。由于 y 的符号位为 1 ,故在 y 的前面添加 16 个 1 ,即可将 y 上升为 int 型,其十六进制形式为 FFFFFFF7H 。最后执行加法,即 0000007FH +FFFFFFF7H=00000076H ,其中最高位的进位 1 自然丢弃。故选 D 。
  • 【排除法】 对于 x 的值, 4 个选项都一样,无需计算; z=x+y=127 - 9=118>0 ,前 4 个字节必然全 0 ,排除 BC ;只需算出 y= - 9 的值即可,其十六进制形式为 FFF7H ,排除 A 。

    【提示】解题时,应先排除明显错误的选项,然后再推敲剩下的选项。

  • 3.已知[x]补,求X。

    2.(1)[x]补=11100001 ,则x=(          )

    (2)[x]补=01111111,则x=(          )

    (3)[x]补=10000000,则x=(          )

  • 符号位不变,末尾第一个1后不变,前面取反。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值