C#-进制转化
(一)数制
计算机中采用的是二进制,因为二进制具有运算简单,易实现且可靠,为逻辑设计提供了有利的途径、节省设备等优点,为了便于描述,又常用八、十六进制作为二进制的缩写。一般计数都采用进位计数,其特点是:
逢N进一,N是每种进位计数制表示一位数所需要的符号数目为基数。
二进制:逢二进一,借一当二
八进制:逢八进一,借一当八
十六进制:逢十六进一,借一当十六
(二)数制转换 不同进位计数制之间的转换原则:不同进位计数制之间的转化是根据两个有理数如相等,则两数的整数部分和分数部分一定分别相等的原则进行的。也就是说,若转化前两数相等,转换后仍必须相等。
十进制:有10个基数:0,1,2,3,4,5,6,7,8,9,
二进制:有2个基数:0,1
八进制:有8个基数:0,1,2,3,4,5,6,7
十六进制:有16个基数:0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F(A=10,B=11,C=12,D=13,E=14,F=15)
1)十进制数——二进制
十进制数除以2,除至0时所得余数按反方向写出,即为二进制数
例: 36除以2得出的商依次为 18 9 4 2 1
所得余数依次为 0 0 1 0 0 1
将余数从右向左写为 1 0 0 1 0 0
所得出的100100为二进制数
2)二进制——十进制
计算公式:a×2^0+b×2^1+……+m×2^(n-1)=
以上公式中,a表示二进制数的右边第一位的数,b表示二进制数的右边第二位的数……m表示二进制数的右边第(n-1)位的数。
例:1011001由右至左成为十进制为89
1×2^0+0×2^1+0×2^2+1×2^3+0×2^4+0×2^5+1×2^6=1+8+16+64=89
3)十进制与二进制相互转换,十进制与十六进制相互转换同十进制与二进制转换一样
4)其他进制之间的转化
二进制转换为八进制:对于整数,采用从右至左每三位一组,不够三位的在其左边补齐0,每组单独转换出来,即为八进制数 (2^3=8)
例: (001 101 111 011)
1 5 7 3
所以,(1573)即为所得的八进制数
八进制数转化为二进制:将每位八进制由三位数二进制数代替,即可完成转换。
例: (1 7 3 5)
001 111 011 101
二进制与十六进制相互转换同二进制与八进制转换相同,八进制和十六进制相互转换需通过二进制

C#-进制转化的更多相关文章
- 【风马一族_C】进制转化
#include "stdio.h" #include "Math.h" #define number 50 //设置数组的长度 int num10; //十进 ...
- c语言进制转化
#include <stdio.h> // 进制转化 int main(void) { ; ; int i3 = 0x32C; printf( printf( printf("十 ...
- 编码/解码和进制转化工具hURL
编码/解码和进制转化工具hURL 在安全应用中,各种编码方式被广泛应用,如URL编码.HTML编码.BASE64等.而在数据分析时候,各种进制的转化也尤为频繁.为了方便解决这类问题,Kali Li ...
- HDU5050:Divided Land(大数的进制转化与GCD)
题意:给定大数A和B,求gcd.所有数字都是二进制. 思路:先输入字符串,再转化为大数,然后用大数的gcd函数,最后转化为字符串输出. 利用字符串和大数转化的时候可以声明进制,就很舒服的完成了进制转化 ...
- python数据结构:进制转化探索
*********************************第一部分*************************************************************** ...
- 《N诺机试指南》(五)进制转化
进制转化类题目类型: 代码详解及注释解答: //进制转化问题 #include <bits/stdc++.h> using namespace std; int main(){ // 1 ...
- P1017进制转化
P1017进制转化 也不知道为啥,这么简单的题困扰了我这么长时间 #include<cstdio> using namespace std; int m; //被除数= 除数*商 + 余数 ...
- python进制转化函数,10进制字符串互转,16进制字符串互转
来了老弟,emmmmm,今天想到平时经常用到编码转化,把字符串转化为16进制绕过等等的,今天想着用python写个玩,查询了一些资料,看了些bolg 上面的两个函数是将二进制流转化为16进制,data ...
- js模拟栈---进制转化。十进制转任意进制进制,任意进制转十进制
var Stack = (function(){ var items = new WeakMap(); //先入后出,后入先出 class Stack{ constructor(){ items.se ...
- 关于Java实现的进制转化(位运算)
一.需求: 最近在做文件传输的东西,文件传输当然是传输很重要,包括编码格式以及进制的统一. 简略的说一下这次做的东西:首先文件是按照块来发送的,一块一块大的发,但是,发送的过程是这样的: 先发送头部, ...
随机推荐
- c语言寄存器变量
寄存器存在于CPU内部,运算速度非常快, 因为内存中的数据必须载入寄存器才能计算.如果直接定义一个变量为寄存器变量,则少了载入等过程自然会快.对于频繁使用的变量可以把它放在寄存器中来提速度. 对于VC ...
- IMU Noise Model
1.参考资料2.相关定义3.IMU 的噪声模型3.1噪声的建模3.2白噪声和随机游走噪声的离散化3.3如何获取传感器噪声参数4.随机噪声和扰动的积分4.1建立模型4.2噪声的离散化模型推导4.3系统的 ...
- Golang基本结构之练习(day2)
笔记: . 任何一个代码文件隶属于一个包 . import 关键字,引用其他包: import(“fmt”) import(“os”) 通常习惯写成: import ( “fmt” “os” ) . ...
- 洛谷 P1260 工程规划(差分约束)
题目描述 造一幢大楼是一项艰巨的工程,它是由n个子任务构成的,给它们分别编号1,2,…,n(5≤n≤1000).由于对一些任务的起始条件有着严格的限制,所以每个任务的起始时间T1,T2,…,Tn并不是 ...
- qt4代码到qt5代码出错
1.error C2039: “toAscii”: 不是“QString”的成员 QT5.0.1把这个函数取消掉了,可以用toLatin1这个函数
- Laravel中Trait的用法实例详解
本文实例讲述了Laravel中Trait的用法.分享给大家供大家参考,具体如下: 看看PHP官方手册对Trait的定义: 自 PHP 5.4.0 起,PHP 实现了代码复用的一个方法,称为 trait ...
- Laravel 5 项目部署到生产环境的实践
作者:mrcn链接:https://www.zhihu.com/question/35537084/answer/181734431来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请 ...
- matplotlib安装错误依赖问题解决
When install "matplotlib" with "pip", if you get the following error, it means t ...
- c#解决Nullable类型的转换 (包含DataContract的序列化和反序列化以及 该例子应用在反射属性setvalue的时候有用)
using System;using System.Collections.Generic;using System.IO;using System.Linq;using System.Reflect ...
- 利用FFmpeg转压视频的说明
当我们制作视频的时候,录制完成的视频往往很大,很容易超过50M,上传的时候会很慢.下面将相关技巧说明如下(转载,版权属于原作者所有). 利用FFmpeg转压视频的说明 录制介绍视频时可以用尽可能高的分 ...