当前位置: 首页 > news >正文

南昌优化网站服务电商美工

南昌优化网站服务,电商美工,php网站后台密码怎么修改,河南百度关键词优化排名软件IEEE754介绍 IEEE 754是一种标准,用于表示和执行浮点数运算的方法。在这个标准中,单精度浮点数使用32位二进制表示,分为三个部分:符号位、指数位和尾数位。 符号位(s)用一个位来表示数的正负,0表示正数,1表…

IEEE754介绍


IEEE 754是一种标准,用于表示和执行浮点数运算的方法。在这个标准中,单精度浮点数使用32位二进制表示,分为三个部分:符号位、指数位和尾数位。

符号位(s)用一个位来表示数的正负,0表示正数,1表示负数。

指数位(e)用8位表示指数。对于单精度浮点数,指数位是以偏移量的形式表示的。也就是说,实际的指数值是指数位的无符号值减去一个偏移量(127)。

尾数位(m)用23位表示数的尾数部分。尾数是一个二进制小数,被规范化为一个小于1的数。

表达式:

V = ( − 1 ) s × ( 1. M ) × 2 ( E − 127 ) V = (-1)^s \times(1.M)\times 2^{(E-127)} V=(1)s×(1.M)×2(E127) (单精度)

V = ( − 1 ) s × ( 1. M ) × 2 ( E − 1023 ) V = (-1)^s \times(1.M)\times 2^{(E-1023)} V=(1)s×(1.M)×2(E1023)(双精度)

在这里插入图片描述

IEEE 754 半精度浮点数16 位符号 1 位,指数 5 位,尾数 10 位
IEEE 754 单精度浮点数32 位符号 1 位,指数 8 位,尾数 23 位
IEEE 754 双精度浮点数64 位 符号 1 位,指数 11 位,尾数 52 位

代码实现计算

 我们首先定义了一个函数binaryIEEE754StringToFloat,它接收一个32位的二进制字符串作为输入,并返回一个浮点数。该函数首先确定输入字符串的长度,并在必要时进行填充,使其达到32位。

 接下来,我们解析符号位、指数位和尾数位。符号位确定数的正负,指数位确定数的范围,尾数位确定数的精度。通过这些步骤,我们能够将二进制字符串转换为浮点数。

 最后,我们在main函数中提供了一个示例二进制字符串,并调用binaryIEEE754StringToFloat函数进行转换。输出结果是一个浮点数,它就是我们所求的结果。

package main
import ("fmt""math""strconv""strings"
)
func binaryIEEE754StringToFloat(binaryStr string) float32 {n := 32 - len(binaryStr)// 补充为32位if n >= 0 && n < 32 {binaryStr = strings.Repeat("0", n) + binaryStr} else {fmt.Println("二进制字符串的长度不合法")return 0}// 解析符号位sign := 1.0if binaryStr[0] == '1' {sign = -1.0}// 解析指数位
(exponent, _ := strconv.ParseInt(binaryStr[1:9], 2, 64))
(exponent -= 127)// 解析尾数位
(mantissa := float32(0))for i := 9; i < len(binaryStr); i++ {if binaryStr[i] == '1' {(mantissa += 1 / float32(math.Pow(2, float64(i-8))))}}// 计算浮点数值
(result := float32(sign) * (1 + mantissa) * float32(math.Pow(2, float64(exponent))))return result
}
func main() {
(binaryStr := "10111111100111101110101110000000") // 示例二进制字符串
(floatVal := binaryIEEE754StringToFloat(binaryStr))fmt.Printf("转换后的浮点数为: %f\n", floatVal)
}

补充(Double类型转换):

func BinaryDoubleStringToFloat(binaryStr string) float64 {// 补充为64位n := 64 - len(binaryStr)if n >= 0 && n < 64 {binaryStr = strings.Repeat("0", n) + binaryStr} else {fmt.Println("二进制字符串的长度不合法")return 0}// 解析符号位sign := 1.0if binaryStr[0] == '1' {sign = -1.0}// 解析指数位exponent, _ := strconv.ParseInt(binaryStr[1:12], 2, 64)exponent -= 1023 // 双精度指数位的偏移量// 解析尾数位mantissa := float64(0)for i := 12; i < len(binaryStr); i++ {if binaryStr[i] == '1' {mantissa += 1 / float64(math.Pow(2, float64(i-11)))}}// 计算浮点数值result := sign * (1 + mantissa) * math.Pow(2, float64(exponent))return result
}
http://www.yayakq.cn/news/774635/

相关文章:

  • 河南做网站的公司百度app免费下载安装
  • 垫江网站建设拼多多采用了哪些网络营销方式
  • 衣柜全屋定制排名山东网站营销seo电话
  • 南昌p2p网站专业建设管理咨询服务合同范本
  • 住房和城乡建设部网站安全分会wordpress4.7.3漏洞
  • 河南住房和城乡建设厅网官方网站自建站是什么意思
  • 微商网站制作简网app工场手机下载
  • 做电商的常去网站二手书店网站建设项目规划书
  • 鲜花外贸网站建设口碑好的网站开发公司
  • 魅族的网站建设与安全德州有做网站的
  • 河北邯郸做网站的公司wordpress换域名搬家图片不显示
  • 郑州网站建设推广渠道北流网站建设制作
  • vue网站开发教程平面设计培训班学费一般要多少钱
  • 企业网站哪个平台好百度收录较好的网站
  • 网站建设 中企动力南昌0792怎么做一个电商网站
  • 怎么做视频网站装修包工头接活网站
  • 网站开发接活石家庄微网站
  • 网站建设表单教案在线培训平台
  • 做网站番禺红酒企业网站建设
  • 2021能看的网站免费的知乎个人备案网站涉及企业
  • 专业房产网站建设公司公司网站开发类属什么费用
  • 青岛做网络直播的网站长春做网站 长春万网
  • 廊坊市建设局官方网站小程序云服务器多少钱
  • 天门网站建设设计项目计划书模板免费
  • 制作学校网站的教程两学一做材料上哪个网站找
  • 重庆网站建设开发工商年检网上申报系统
  • 南通网站建设制作公司品牌策划包括哪几个方面
  • 网站建设河南wordpress改密码
  • 购物网站开发教程中文爱做网站视频
  • 二手车的网站建设例子wordpress编辑主体