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实现的进制转化(位运算)
一.需求: 最近在做文件传输的东西,文件传输当然是传输很重要,包括编码格式以及进制的统一. 简略的说一下这次做的东西:首先文件是按照块来发送的,一块一块大的发,但是,发送的过程是这样的: 先发送头部, ...
随机推荐
- nignx reload的时候报错invalid PID number
第一种思路是从PID号着手,提示无效PID号时nginx.pid文件为空,将进程的PID号追加到空的nginx.pid上,问题解决: 还有问题,请参考:https://www.cnblogs.com/ ...
- MyEclipse文件查找技巧
只为成功找方法,不为失败找借口! MyEclipse使用总结——MyEclipse文件查找技巧 一.查找文件 使用快捷键[ctrl+shift+R]弹出弹出文件查找框,如下图所示: 二.查找包含某个字 ...
- docker+zookeeper+mesos+marathon集群
实验环境: 主机名 ip地址 运行服务 安装组件 docker-master1 192.168.20.210 zookeepermesos-mastermarathon mesosmarathonme ...
- PostgreSQL CPU满(100%)性能分析及优化
业务场景:大批量更新时,数据库长时间CPU占用超过90,影响其他正常业务流程,参考阿里云上的一篇文章:https://help.aliyun.com/knowledge_detail/43562.ht ...
- Nginx搭建成功后,无法访问Tomcat问题
一.nginx搭建好后无法访问后端Tomcat项目 通过项目名称过滤的方式访问Tomcat,比如项目名称叫easy. 修改其server下的location目录,配置如下: server { #监听的 ...
- tp5中url使用js变量传参方法
window.location.href="{:url('Index/index')}>"+"/ID/"+ID; //这样可以生成,但url模式改变则不能 ...
- CocoaPods安装和使用教程[转]
目录 CocoaPods是什么? 如何下载和安装CocoaPods? 如何使用CocoaPods? 场景1:利用CocoaPods,在项目中导入AFNetworking类库 场景2:如何正确编译运行一 ...
- java并发编程实战:第七章----取消与关闭
Java没有提供任何机制来安全地终止线程(虽然Thread.stop和suspend方法提供了这样的机制,但由于存在缺陷,因此应该避免使用 中断:一种协作机制,能够使一个线程终止另一个线程的当前工作 ...
- weevely入手使用笔记
-前言 weevely是一款使用python编写的webshell工具,集webshell生成和连接于一身,采用c/s模式构建,可以算作是linux下的一款php菜刀替代工具,具有很好的隐蔽性(生成随 ...
- Java定时任务的实现
本例依据Java自身提供的接口实现,通过监听器(Listener)和定时器(Timer)定时执行某个任务(Task).专业的开源工具可参考Quartz:http://www.opensymphony. ...