栏目分类:
子分类:
返回
终身学习网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
终身学习网 > IT > 软件开发 > 后端开发 > Python

Python学习日记 Day5-原码、反码、补码、取整函数、天堂地狱

Python 更新时间:发布时间: 百科书网 趣学号
一、原码、反码、补码 概念

        原码是计算机机器数中最简单的一种形式,数值位就是真值的绝对值,符号位为“0”时表示正数,符号位为“1”时表示负数,原码又称带符号的绝对值。

        反码和补码的由来参见如下链接

     原码 反码 补码 概念 原理 详解 [MD] - 白乾涛 - 博客园 (cnblogs.com)

计算方法

          一个正数,转换为二进制位就是这个正数的原码。负数的绝对值转换成二进制位然后在高位补1就是这个负数的原码。

        正数的反码就是原码,负数的反码等于原码除符号位以外所有的位取反。

        正数的补码与原码相同,负数的补码为反码的最低位加1(有进项则相应进项)。

Note

        1. 计算机以×X中s的数值来判断X的正负,故符号位0正1负。

        2.-128并没有原码和反码表示

        3.七位二进制求原码、反码、补码,先添加符号位补成八位再进行操作。

e.g -0000011 原码:10000011 反码:11111100 补码:11111101

二、取整

        1.int()、//、floor()都是向下取整,即地板除。

e.g 5//2==2 int(5/2)==2

        2.可将结果转化为浮点数。

e.g 5/2==2.5 

        3.round()四舍五入取整。

e.g round(5/2)==3

        4.ceil()向上取整。

        5.z为复数,用z.real和z.imag取实部虚部时会变成浮点数。

e.g z=1+2j z.real==1.0

        6.abs()用于复数z=a+bj时,结果为

三、一个面试题

Q:两扇门分别通往天堂、地狱,两扇门前都分别站着一个门卫,其中一个只会说谎,另一个绝不说谎,你只能问其中一名门卫一个问题,要先去天堂,这个问题该怎样问呢?

A:只需要让门卫A去问门卫B“通往天堂的门是哪一扇”,如果A说假话,那么A就会将B说的真话反着说;如果A说真话,那么A就会将B说的假话原原本本复述。因此只需要反向选择A回答的那扇门即可。

四、带小数的进制转化

3.R进制数 → 十进制数

4.十进制小数→R进制小数

乘R取整顺序法:乘基数取整,连续乘以基数,并取其整数,直到积为零或达到所要求的精度时,将所得整数正序排列即可。

参考资料

1.带小数点的进制转换_百度知道 (baidu.com)

2.

​​​​​​(17条消息) 为什么计算机中数字符号位0表示正数,1表示负数_码飞_CC的博客-CSDN博客_符号位0是正还是负https://blog.csdn.net/cc18868876837/article/details/88371491

转载请注明:文章转载自 www.051e.com
本文地址:http://www.051e.com/it/294721.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 ©2023-2025 051e.com

ICP备案号:京ICP备12030808号