原码(true form)是一种计算机中对数字的二进制定点表示方法。原码表示法在数值前面 增加了一位符号位(即最高位为符号位):正数该位为0,负数该位为1(0有两种表示:+0和-0),其余位表示数值的大小。这样一个数的8位原码表示中,第一位是符号位,剩余七位是数值的二进制表示。例如:-8的原码为10001000 ,其中左边第一位1是符号位,表示该数是一个负数,后面七位0001000表示该数的绝对值8。 |
Input |
第一行为一个正整数N,表示测试数据组数。 接下来是N行,每行表示一个8位二进制原码。 |
Output |
输出每个原码对应的补码,每个补码占独立的一行。 |
Sample Input |
3 10001000 00000000 10000000 |
Sample Output |
11111000 00000000 10000000 解题思路: 先定义一个字符窜数组来存储原码,再将后7个非符号的二进制字符窜转化为整数型存在另一个整数型数组的后七位,第一位赋值0。判断字符窜数组的第一位,若为0,则原样输出,若为1,则将整数 型数组的后七位进行相反数,即0变为1,1变为0,然后从最后一位加1,若大于1,就减去2,向前进1,最后看一下第一位是不是1,若为1,则直接输出,若为0,则赋值1.(其实不去理会溢出的问题 ,直接将整数型数组的第一位赋值1,然后输出也行)
|
原码转补码
最新推荐文章于 2023-10-16 20:05:54 发布