C语言高级程序设计——进制算法以及位算符号
语言不够官方;意会;
数据储存运算是以二进制的,二进制数有原码 反码 补码三种。通常所说的二进制就是原码。(语言不官方)
原码 :4的原码可以为:0000 0100;最高位0 可以为符号数
反码:正数和原码相同,负数的符号位不变,其余位0变1,1变0
补码:正数和原码相同,负数的补码在反码的基础上加1(二进制存储是以补码来存的)
二进制八进制互转
二转八:三位转一位;八转二:一位转三位;
二进制十进制互转
二转十:按照8 4 2 1乘以各个位置数字;十转二:整数部分累除2取余数法,小数部分乘2取整法
二进制十六进制互转
二转十六:四位转一位;十六转二:一位转四位;
八进制十进制互转
八转十:同二转十原理相同;十转八:同十转二原理相同
八进制十六进制互转
以二进制为中间量互转。
十进制十六进制互转
十转十六:除以16取余,十六转十:乘以16取整
数据类型
short、int、long、char、float、double 这六个关键字代表C 语言里的六种基本数据类型。
类型转换
&:位与运算 两边都为1结果才能为1
|: 位或运算 只要一边为1结果就为1
^: 位异或运算 相同结果为0,不同为1
~: 位取反运算 0变1,1变0
<<:左移运算
>>:右移运算
在C语言中 对于无符号数,左移运算时右侧补0;右移运算时左侧补0; 对于有符号数,左移运算时右侧补0;右移运算时左侧补符号位; 在嵌入式中,规定移位都是无符号的(unsigned)。
以上都是知识点,有基础才能看懂!
在C语言中,重要的是多算。
C语言高级程序设计——进制算法以及位算符号的更多相关文章
- C语言学习笔记:15_c语言中的进制操作.c
/* * 15_c语言中的进制操作.c * * Created on: 2015年7月5日 * Author: zhong */ #include <stdio.h> #include & ...
- Python语言中各种进制相互转换
目录 Python语言中各种进制相互转换 将二进制.八进制.十进制的数分别转换成十进制的方法 将十进制转换成二进制.八进制.十六进制 Python语言中各种进制相互转换 本文参考自https://ww ...
- 转成p进制算法C语言
今天打比赛的时候竟然下一没有想起来, 实际上是非常简单的. 举例说明: $64 = 2 \times 3^3 + 1 \times 3^2 + 3^0$ 根据秦九韶算法每次提出3,即 $3(2 \ti ...
- c语言将2进制数转化为10进制数(栈的初始化,进栈,出栈)
//c语言描述 将2进制转化为10进制 #include <stdio.h> #include <stdlib.h> #include <math.h> #defi ...
- C语言编程的进制问题问题
在我们的编译器,我用的是ADS 开发平台,现在RTC模块编程时,2410作为上位机,如下代码: n = rBCDDATE;if(n==1) time->day =0x31 ; 波斯历的日期与 ...
- C语言:十进制进制转换为其他进制(思想:查表法)
// // main.c // Hex conversion // // Created by ma c on 15/7/22. // Copyright (c) 2015年 bjsxt. A ...
- C语言:其他进制转换为十进制(方法二)
#include<stdio.h> #include<math.h> #include<string.h> #include<ctype.h> //其他 ...
- C语言:其他进制数转换为十进制(方法一)
#include<stdio.h> #include<math.h> #include<string.h> //其他任意进制转换为十进制 int main() { ...
- C语言之任意进制的转换
我们都知道转换进制是一个让人比较头疼的事情,下面我的代码不是最好的,也就仅仅是一个思路而已,至少我认为使用栈来进行进制转换是比较合适的一种方法,好了,不多叙述了. #include<stdio. ...
随机推荐
- New Concept English Two 17 43
$课文41 你把那个叫帽子吗? 422. 'Do you call that a hat?' I said to my wife. “你把那个叫帽子吗?”我对妻子说. 423. 'You needn ...
- 错误 1 类,结构或接口成员声明中的标记"="无效
using System;using System.Collections.Generic;using System.Linq;using System.Text; namespace Console ...
- APP界面框架初窥---标签导航
标签导航是十大界面框架设计里最常用的界面框架设计,也是被业界之内公认的一种普遍使用的页面框架设计.那么这种页面框架设计在作业方面对一个用户来说也是最常见的一种页面框架设计,比如说微博.微信.手机百度. ...
- HDU 1358
http://acm.hdu.edu.cn/showproblem.php?pid=1358 求某个前缀的周期,用Next求循环节的题目 #include <iostream> #incl ...
- test20181019 B君的第一题
题意 分析 考场做法同标解. 画图模拟分析发现,无论操作顺序怎样,操作数的奇偶性是不变的. 所以等同求出,以每点为根的操作数奇偶性. 用\(f(x)\)表示x及其子树中的边,包括x到它fa的边,将他们 ...
- hasura graphql 模式拼接概念
具体的使用可以参考下面一张图 有一个术语 graphql-bindings 参考项目: https://github.com/hasura/generate-graphql-bindings http ...
- CCFLOW5 SDK 模式 开发环境配置
在群里和论坛里问了N次都没有人回答,最终在QQ好友[冥(276669806) ]的帮助下成功配置了SDK开发环境.现将具体配置步骤分享给大家.1.打开VS2010 新建一个网站项目2.将CCFlow\ ...
- Kafka问题排查(消费者自动关闭)
问题描述: 在消费端能够正常消费到Kafka数据并成功生产到producer topic 中,当将kafka的一台机器关机之后,正常情况下应该是 消费端是不受影响的.因为有还有两 ...
- windows mac ssh 出国访问google等系列网站
淘宝买ssh代理 windows:tunnelier mac:issh 浏览器:chrome 插件:switchysharp
- C# winForm 文件拖拽
控件 AllowDrop属性改为true,并实现它的DragEnter.DragDrop这两个事件. private void lbFilePath_DragEnter(object sender, ...