python补齐位数,python自动补全代码

  python补齐位数,python自动补全代码

  任务描述

  背景

  原代码的优点是容易理解和修改,缺点是符号位不能参与加法。例如,真值1和1相加的结果是0,当用4位源代码操作时,得到下面的结果。

  1和1对应的源代码分别是1001和0001;

  1001 0001=1010;

  010对应的真值是10,计算结果有误。

  因此,当源代码的编码比特参与运算时,会得到错误的结果,但编码比特可以在不参与运算的情况下进行额外处理,这增加了硬件实现的复杂度,降低了计算速度。加法是计算机的核心功能,它的速度很大程度上决定了计算机的整体性能。所以计算机的基础用的是补充代码,不是原码。源代码和成品代码之间还有一个过渡代码,叫做“逆向代码”。

  对应于真值的逆代码的计算步骤如下。

  如果真值为正,则反转码等于原码,例如1001的8位反转码为0001001;

  如果真值为负,则先获取原码,在原码符号位不变的情况下,将数字部分逐位反转。即8位源代码(如1001)是10001001,而8位逆序码是1110110。

  如果你不熟悉这个过程,请参考上面的例子来尝试下面的计算:

  工作

  此任务的功能是通过实现Zhentofan(z)函数,将给定的真Z转换为8位反转代码。和参数返回值与以前的海关相同。这意味着:

  1)参数z是长度小于等于8的字符串,表示二进制整数。

  2)z对应的真值符号可以是也可以不是。如果不是,则表示为正数,如“-1001”、“101”、“101”。都是z的可取值。

  3)函数返回值为字符串类型,表示真值z对应的8位反转码。

  相关知识

  提示:下面是ZhenToFan函数的参考流程图。

  可以看出,这个过程主要涉及两个操作。通过把源代码和数字部分一点一点倒过来,可以先把这两个操作封装在两个函数中,然后在ZhenToFan函数中调用这两个函数,这样就降低了实现的难度。这其实就是之前多次提到的“把复杂的问题分解成一系列简单的问题”。

  编程要求

  要在起止区间实现Zhentofan(z)函数,请参考具体要求。

  试验规格

  例如,测试集1的输入可能如下所示:

  -1001

  测试集1的输出如下。

  -1001 - 11110110

  开始你的任务。我祝你成功。

  n=8 # # # # # # # begin # # # # # # # zef Zhen TOYUAN(z)3360 ifz(0)=-:b= 1 z=))IF LEN(z)(n-1):前端( 1)))z b)y= 。join(ZL)return ydef qufan(y)y):yl=[I for I in y]for I in range(1)1,len(YL))3360 ifyl(I)=(1(:yl)I)=(1)else:yl)I)=(1)return(。join ) yl ) def ZhenToFan(z)

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: