Network基础(二):数制转换

一、数制转换

目标:

1)请将下列数字转换为十进制数:

(110010011111)2 、(10110101110)2

2)请将下列十进制数转换为二进制:

156、2608、1043

方案:

使用按权展开法将二进制数转换为十进制数,使用短除法除2取余计算十进制数转换为二进制数。

步骤:

步骤一:二进制转十进制

1)二进制数110010011111,转为十进制的结果是3231,转换过程如下:

(1100 1001 1111)2
    = 1x211+1x210+0x29+0x28+1x27+0x26+0x25+1x24+1x23+1x22+1x21+1x20
    = 2048+1024+0+0+128+0+0+16+8+4+2+1
    = 3231

2)二进制数10110101110,转为十进制的结果是1454,转换过程如下:

(101 1010 1110)2
    = 1x210+0x29+1x28+1x27+0x26+1x25+0x24+1x23+1x22+1x21+0x20
    = 1024+0+256+128+0+32+0+8+4+2+0
    = 1454

步骤二:十进制转二进制

1)十进制数156,转为二进制的结果是10011100,转换过程如下:

156除以2,商为78,余数为0;
    78除以2,商为39,余数为0;
    39除以2,商为19,余数为1;
    19除以2,商为9,余数为1;
    9除以2,商为4,余数为1;
    4除以2,商为2,余数为0;
    2除以2,商为1,余数为0;
    1除以2,商为0,余数为1;
    综上,将余数倒序排列,得10011100 。

2)十进制数2608,转为二进制的结果是1010 0011 0000,转换过程如下:

2608除以2,商为1304,余数为0;
    1304除以2,商为652,余数为0;
    652除以2,商为326,余数为0;
    326除以2,商为163,余数为0;
    163除以2,商为81,余数为1;
    81除以2,商为40,余数为1;
    40除以2,商为20,余数为0;
    20除以2,商为10,余数为0;
    10除以2,商为5,余数为0;
    5除以2,商为2,余数为1;
    2除以2,商为1,余数为0;
    1除以2,商为0,余数为1;
    综上,将余数倒序排列,得1010 00111 1100 。

3)十进制数1043,转为二进制的结果是100 0001 0011,转换过程如下:

1043除以2,商为521,余数为1;
    521除以2,商为260,余数为1;
    260除以2,商为130,余数为0;
    130除以2,商为65,余数为0;
    65除以2,商为32,余数为1;
    32除以2,商为16,余数为0;
    16除以2,商为8,余数为0;
    8除以2,商为4,余数为0;
    4除以2,商为2,余数为0;
    2除以2,商为1,余数为0;
    1除以2,商为0,余数为1;
    综上,将余数倒序排列,得100 0001 0011 。

原文地址:https://www.cnblogs.com/baichuanhuihai/p/8276094.html

时间: 2024-10-08 21:42:30

Network基础(二):数制转换的相关文章

Python全栈开发【基础二】

Python全栈开发[基础二] 本节内容: Python 运算符(算术运算.比较运算.赋值运算.逻辑运算.成员运算) 基本数据类型(数字.布尔值.字符串.列表.元组.字典) 编码与进制转换 Python 运算符 1.算术运算: 2.比较运算: 3.赋值运算: 4.逻辑运算:  5.成员运算: 基本数据类型 1.数字 int(整型) 1 class int(object): 2 """ 3 int(x=0) -> integer 4 int(x, base=10) -&g

数据结构实践——数制转换(栈)

本文是针对数据结构基础系列网络课程(3):栈和队列的实现项目. [项目 - 数制转换] 把十进制的整数转换为任一进制数输出.请利用栈设计算法,并实现程序. 提示:要转换为r进制,则原来的数逐次除以基数r(除完之后用商再除),直到商为0,得到的一系列余数的逆序就是转换结果.这里的"逆序",意味着后产生的余数,会先输出,后进先出,栈的机会来了-- [参考解答] 解法:头文件sqstack.h请见[顺序栈算法库],使用链栈也可以. #include <stdio.h> #incl

10-08C#基础--进制转换

(一).数制 计算机中采用的是二进制,因为二进制具有运算简单,易实现且可靠,为逻辑设计提供了有利的途径.节省设备等优点,为了便于描述,又常用八.十六进制作为二进制的缩写.一般计数都采用进位计数,其特点是: (1)逢N进一,N是每种进位计数制表示一位数所需要的符号数目为基数. (2)采用位置表示法,处在不同位置的数字所代表的值不同,而在固定位置上单位数字表示的值是确定的,这个固定位上的值称为权. 在计算机中:D7 D6 D5 D4 D3 D2 D1 D0 只有两种0和1 8 4 2 1二).数制转

Object Pascal 语法之语言基础(二)

1.5 数据类型与定义变量 Object Pascal 语言的最大特点是对数据类型的要求非常严谨.传递给过程或函数的参数值必须与形参的类型一致.在Object Pascal 语言中不会看到像C 语言编译器提示的“可疑的指针转换”等警告信息.由于Object Pascal 语言对数据类型比较严谨,因此它会对代码进行严格检查,以确保不会出现错误.变量是程序代码中代表一个内存地址的标识符,那么该地址的内存内容就可以在程序代码执行时被改变.每个变量都有一个名字和数据类型,名字可以用来引用变量,数据类型决

嵌入式视频处理基础(二)

引言: 作为消费者,我们对于各种形式的视频系统都已经非常熟悉了.但是从嵌入式开发人员的角度来看,视频就好像是一张纷繁复杂的网络,里面充满了各种不同的分辨率.格式.标准与显示等. 隔行扫描和逐行扫描: 隔行扫描起源于早起的模拟电视广播,那时候需要按顺序将图像快速刷新,以减小视觉上的闪烁,但是当时的技术还无法做到这么快速的刷新整个屏幕.因此,就将每一帧进行交织处理,即分为两场,一个由奇数扫描行组成,另一个由偶数扫描行组成. 隔行扫描 帧分为奇数和偶数场 NTSC(PAL)的帧刷新率大约为30(25)

Java基础-进制转换

Java基础-进制转换 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Java 程序中常用的进制 1>.十进制,由"0123456789" 这10个数字组成,逢十进一: 2>.二进制,由"01" 这2个数字组成,逢二进一,以"0b"开头: 3>.八进制,由"01234567" 这8个数字组成,逢八进一,以数字"0"开头: 4>.十六进制,由"0123

Java 基础 IO流(转换流,缓冲)

一,前言 在学习字符流(FileReader.FileWriter)的时候,其中说如果需要指定编码和缓冲区大小时,可以在字节流的基础上,构造一个InputStreamReader或者OutputStreamWriter,这又是什么意思呢 二,转换流 2.1 OutputStreamWriter类 查阅OutputStreamWriter的API介绍,OutputStreamWriter 是字符流通向字节流的桥梁:可使用指定的字符编码表,将要写入流中的字符编码成字节.它的作用的就是,将字符串按照指

Html5开发——html+css基础二(个人博客一)

今天没有写完,而且写的还有点问题,所以今天就先不上传代码了(ps:快写完了才发现布局有问题,导致代码太多,感觉写的不是很好,所以今天先分析一下布局) 第一步先写一个大的div用来放ABC三个部分,这个大的div居中! 第二步分别写ABC三个部分,ABC三个部分分别使用浮动(float)来定位.A和B都各使用了一张非常小的图片,通过重复(repeat)属性生成A和B 第三步C部分分别写好3~16这几个模块,在通过组合利用浮动定位.分组如下: E:3 F:4.7.10.13 G:5.8.11.14

数据结构--栈的基本操作及应用(数制转换)

#include <stdio.h> #include <stdlib.h> #include <malloc.h> #include <math.h> #define TRUE 1 #define FALSE 0 #define ERROR 0 #define INFEASIBLE -1 typedef int Status; typedef int Boolean; typedef int SElemType; #define STACK_INIT_SI