• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

C-03\\浮点数转换与编码和补码

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

工程生成文件格式了解(常用)

工具 文件 作用
vc++6.0 .dsw 最高级别的配置文件,记录了整个工作空间的配置信息,是一个纯文本的文件,创建新项目时自动生成
vc++6.0 .dsp 配置文件,记录一个项目的所有配置信息,纯文本文件
vc++6.0 .plg 实际是一个超文本文件,记录了Build的过程,是一个日志型文件(编译时的error和warning信息文件)
vc++6.0 .opt .opt 工程关于开发环境的参数文件。如工具条位置等信息,也是一个配置文件
vc++6.0 .ncb 缓存文件(无编译浏览文件)
vs .sln 解决方案文件
vs .vcxproj 工程配置文件
vs .vcxproj.filters 筛选器文件,指定哪些是头文件,哪些是source文件等等
vs .vcxproj.user 本地化用户配置

移交文件时,将.cpp.c.h.dsp.dsw移交即可(VC++6.0)

.cpp.c.sln.vcxproj.vcxproj.filters.vcxproj.user移交即可(VS2019)

小知识点

  1. 逻辑和UI分开,不要放在同一个函数中
  2. 一行代码一般不超过80列
  3. 移位比乘法指令周期短,速度快

浮点数转换与编码

浮点数进制转换(十进制转二进制)

整数部分:除以2取余,逆序排列

小数部分:乘2取整,顺序排列

浮点数编码

类型 符号位(最高位)S 指数位E 尾数位M
float 0为正,1为负(1位) 8位 23位
double 0为正,1为负(1位) 11位 52位

其中float指数位以2^(8-1)-1 = 127 为标准(称为偏置值),128的二级制表示为1000 0000

double指数为以2^(11-1)-1 = 1023为标准(称为偏置值),1024的二进制表示为100 0000 0000

补码

求补是一种运算,不区分正负;补码是一种编码规则,区分正负

求补运算:将操作数按位取反后加1(对应汇编NEG指令)

补码:最高位为符号位,0表示正数,1表示负数

正数的补码和原码一样,负数的补码将原码除最高位外,其余按位取反(对应汇编not指令),然后+1

减法转为加法的原理

A - B;				   // A, B 设是一个字节大小, 则一共有 100 个值(100为十六进制值)
A + (100 - B) + 100;	// negB = 100 - B
A + negB - 100;

// B + ~B = FF
// B + ~B + 1 = 100
// ~B + 1 = 100 - B
negB = notB + 1			// not 与 ~ 都是按位取反 

鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C#温故而知新学习系列之面向对象编程—自动属性(十一)发布时间:2022-07-14
下一篇:
C语言中有bool类型吗?发布时间:2022-07-14
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap