可否使用一个字节来保存浮点数?

xiao88yan 2014-10-29 02:28:52
可以容忍精度损失,C语言,请问如何做?
...全文
334 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
倾星 2018-11-07
  • 打赏
  • 举报
回复
C语言一个字节只能存整数
plaingenius 2018-11-02
  • 打赏
  • 举报
回复
这个问题让我想起上家公司的一个逗逼同事,他是想把整数装进char里面还不损失精度,去问技术总监,总监说不行的,他拍桌子说总监技术不行。。。其实这逗逼为什么要这么搞呢,因为让他做的事情是把数据发给串口
xiao88yan 2014-10-29
  • 打赏
  • 举报
回复
引用 7 楼 ForestDB 的回复:
自己仿IEEE 754定个1字节的浮点数的规范, 然后自己再根据这个规范和IEEE 754的规范,写出标准浮点数和一字节浮点数的互转例程,搞定。
看来要想满足要求,只能如此了,再没有更简便的方法了
ForestDB 2014-10-29
  • 打赏
  • 举报
回复
自己仿IEEE 754定个1字节的浮点数的规范, 然后自己再根据这个规范和IEEE 754的规范,写出标准浮点数和一字节浮点数的互转例程,搞定。
mujiok2003 2014-10-29
  • 打赏
  • 举报
回复
引用 2 楼 xiao88yan 的回复:
[quote=引用 1 楼 zhao4zhong1 的回复:] 1位符号,2位阶码,5位尾数 ? http://bbs.csdn.net/topics/390676437
需要手动修改吗?我只是想把一个float型的值直接存到一个字节里面去[/quote] 想想就好, 不要实践,害人害己。
shlvshe00 2014-10-29
  • 打赏
  • 举报
回复
一个字节才多大,你存浮点数还要考虑小数吧,这样放的就更小了..
xiao88yan 2014-10-29
  • 打赏
  • 举报
回复
引用 3 楼 r_Jimy 的回复:
[quote=引用 2 楼 xiao88yan 的回复:] [quote=引用 1 楼 zhao4zhong1 的回复:] 1位符号,2位阶码,5位尾数 ? http://bbs.csdn.net/topics/390676437
需要手动修改吗?我只是想把一个float型的值直接存到一个字节里面去[/quote] 直接赋值,就是没尾数而已,比如:

    double test=3.92;
    char ch=test;
上面代码中ch存的是3[/quote] 这个精度损失有点大,呵呵
常书 2014-10-29
  • 打赏
  • 举报
回复
引用 2 楼 xiao88yan 的回复:
[quote=引用 1 楼 zhao4zhong1 的回复:] 1位符号,2位阶码,5位尾数 ? http://bbs.csdn.net/topics/390676437
需要手动修改吗?我只是想把一个float型的值直接存到一个字节里面去[/quote] 直接赋值,就是没尾数而已,比如:

    double test=3.92;
    char ch=test;
上面代码中ch存的是3
xiao88yan 2014-10-29
  • 打赏
  • 举报
回复
引用 1 楼 zhao4zhong1 的回复:
1位符号,2位阶码,5位尾数 ? http://bbs.csdn.net/topics/390676437
需要手动修改吗?我只是想把一个float型的值直接存到一个字节里面去
赵4老师 2014-10-29
  • 打赏
  • 举报
回复
1位符号,2位阶码,5位尾数 ? http://bbs.csdn.net/topics/390676437
【奥鹏】19春华师《计算机组成原理》在线作业 试卷满分:100 试卷得分:100 一、单选题(共20题,60分) 1、键盘的输入输出适用于采用____方式。 A程序查询 B程序中断 CDMA D数据多路通道 [仔细阅读以上试题,并作出选择] 正确选择:C 2、若采用双符号位,则发生正溢的特征是:双符号位为____。 A00 B01 C10 D11 [仔细阅读以上试题,并作出选择] 正确选择:B 3、在取指令操作之后,程序计数器中存放的是____。 A当前指令的地址 B下一条指令的地址 C程序中指令的数量 D指令的长度 [仔细阅读以上试题,并作出选择] 正确选择:B 4、零地址运算指令在指令格式中不给出操作数地址,因此它的操作数来自() A立即数和栈顶 B栈顶和次栈顶 C暂存器和栈顶 D寄存器和内存单元 [仔细阅读以上试题,并作出选择] 正确选择:B 5、转移指令的主要操作是____。 A改变程序计数器PC的值 B改变地址寄存器的值 C改变程序计数器PC和堆栈指针的值 D从堆栈中恢复程序计数器PC的值 [仔细阅读以上试题,并作出选择] 正确选择:A 6、某计算机字长是16位它的存储容量是64KB,按字编址,它们寻址范围是____。 A64K B32KB C32K D16KB [仔细阅读以上试题,并作出选择] 正确选择:C 7、在采用微程序控制器的计算机中,____。 A每一条指令由一条微指令来执行 B每一条指令由一个微程序来执行 C每条微指令由一条机器指令来执行 D每一个微程序由一条机器指令来执行 [仔细阅读以上试题,并作出选择] 正确选择:B 8、在不同速度的设备之间传送数据,() A必须采用同步控制方式 B必须采用异步控制方式 C可以选用同步方式,也可选用异步方式 D必须采用应答方式 [仔细阅读以上试题,并作出选择] 正确选择:B 9、水平型微指令的特点是____。 A一次只能完成一个操作 B一次可完成多个操作 C控制字不进行编码 D微指令格式简单短小 [仔细阅读以上试题,并作出选择] 正确选择:B 10、真值为00101的数在字长为8的机器中,其补码形式为____。 A11011011 B10011011 C10110110 D10110111 [仔细阅读以上试题,并作出选择] 正确选择:A 11、高速缓冲存储器Cache一般采取() A随机存取方式 B顺序存取方式 C半顺序存取方式 D只读不写方式 [仔细阅读以上试题,并作出选择] 正确选择:A 12、计算机内存储器可以采用() ARAM和ROM B只有ROM C只有RAM DRAM和SAM [仔细阅读以上试题,并作出选择] 正确选择:A 13、浮点数进行左规格化时,____。 A尾数左移1位,阶码加+1 B阶码左移1位,尾数加+1 C尾数左移1位,阶码加 D阶码左移1位,尾数加 [仔细阅读以上试题,并作出选择] 正确选择:C 14、若存储周期250ns,每次读出16位,则该存储器的数据传送率为____。 A4×106字节/秒 B4M字节/秒 C8×106字节/秒 D8M字节/秒 [仔细阅读以上试题,并作出选择] 正确选择:D 15、在一地址指令格式中,下面论述正确的是() A仅能有一个操作数,它由地址码提供 B一定有两个操作数,另一个是隐含的 C可能有一个操作数,也可能有两个操作数 D如果有两个操作数,另一个操作数是本身 [仔细阅读以上试题,并作出选择] 正确选择:C 16、一个512KB的存储器,地址线和数据线的总和是____。 A17 B19 C27 D36 [仔细阅读以上试题,并作出选择] 正确选择:C 17、一个16K*16位的存储器,地址线和数据线的总和是() A30 B46 C36 D27 [仔细阅读以上试题,并作出选择] 正确选择:A 18、硬连线控制器是一种____控制器。 A组合逻辑 B时序逻辑 C存储逻辑 D同步逻辑 [仔细阅读以上试题,并作出选择] 正确选择:A 19、已知:X=0.1111,Y=-0.1101。(X+Y)原=() A0.1110 B1.0011 C1.1010 D0.0010 [仔细阅读以上试题,并作出选择] 正确选择:D 20、主存与辅存的区别不包括() A是否按字节或字编址 B能否长期保存信息 C能否运行程序 D能否由CPU直接访问 [仔细阅读以上试题,并作出选择] 正确选择:C 二、判断题(共20题,40分) 1、用微指令的分段译码法设计微指令时,需将具有相斥性的微命令组合在同一字段内。 A错误 B正确 [仔细阅读以上试题,并作出选择] 正确选择:B 2、DMA方式进行外设与主机交换信息时,不需要向主机发出中断请求。 A错误 B正确 [仔细阅读以上试题,并作出选择] 正确选择:A 3、主存储器中采用双译码结构的主要目的是提高

69,371

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧