语言不够官方;意会;

数据储存运算是以二进制的,二进制数有原码 反码 补码三种。通常所说的二进制就是原码。(语言不官方)

原码 :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语言高级程序设计——进制算法以及位算符号的更多相关文章

  1. C语言学习笔记:15_c语言中的进制操作.c

    /* * 15_c语言中的进制操作.c * * Created on: 2015年7月5日 * Author: zhong */ #include <stdio.h> #include & ...

  2. Python语言中各种进制相互转换

    目录 Python语言中各种进制相互转换 将二进制.八进制.十进制的数分别转换成十进制的方法 将十进制转换成二进制.八进制.十六进制 Python语言中各种进制相互转换 本文参考自https://ww ...

  3. 转成p进制算法C语言

    今天打比赛的时候竟然下一没有想起来, 实际上是非常简单的. 举例说明: $64 = 2 \times 3^3 + 1 \times 3^2 + 3^0$ 根据秦九韶算法每次提出3,即 $3(2 \ti ...

  4. c语言将2进制数转化为10进制数(栈的初始化,进栈,出栈)

    //c语言描述 将2进制转化为10进制 #include <stdio.h> #include <stdlib.h> #include <math.h> #defi ...

  5. C语言编程的进制问题问题

    在我们的编译器,我用的是ADS   开发平台,现在RTC模块编程时,2410作为上位机,如下代码: n = rBCDDATE;if(n==1) time->day =0x31 ; 波斯历的日期与 ...

  6. C语言:十进制进制转换为其他进制(思想:查表法)

    // //  main.c //  Hex conversion // //  Created by ma c on 15/7/22. //  Copyright (c) 2015年 bjsxt. A ...

  7. C语言:其他进制转换为十进制(方法二)

    #include<stdio.h> #include<math.h> #include<string.h> #include<ctype.h> //其他 ...

  8. C语言:其他进制数转换为十进制(方法一)

    #include<stdio.h> #include<math.h> #include<string.h> //其他任意进制转换为十进制 int main() { ...

  9. C语言之任意进制的转换

    我们都知道转换进制是一个让人比较头疼的事情,下面我的代码不是最好的,也就仅仅是一个思路而已,至少我认为使用栈来进行进制转换是比较合适的一种方法,好了,不多叙述了. #include<stdio. ...

随机推荐

  1. 201621123006 《Java程序设计》第13周学习总结

    1. 本周学习总结 以你喜欢的方式(思维导图.OneNote或其他)归纳总结多网络相关内容. 2. 为你的系统增加网络功能(购物车.图书馆管理.斗地主等)-分组完成 为了让你的系统可以被多个用户通过网 ...

  2. The record of Rf module debugging (1)

    In order to improve engineering English writing ability,start from today,record my daily work of  el ...

  3. js在一定时间内跳转页面及各种页面刷新

    1.js 代码: <SCRIPT LANGUAGE="JavaScript"> var time = 5; //时间,秒 var timelong = 0; funct ...

  4. JS 实战1(添加、删除)

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.aspx.cs ...

  5. 深入__proto__和prototype的区别和联系

    前话 有一个一个装逼的同事,写了一段代码 function a(){} a.__proto__.__proto__.__proto__ 然后问我,下面这个玩意a.__proto__.__proto__ ...

  6. 7-13 求链式线性表的倒数第K项(20 分)

    给定一系列正整数,请设计一个尽可能高效的算法,查找倒数第K个位置上的数字. 输入格式: 输入首先给出一个正整数K,随后是若干正整数,最后以一个负整数表示结尾(该负数不算在序列内,不要处理). 输出格式 ...

  7. LG4719 【模板】动态dp 及 LG4751 动态dp【加强版】

    题意 题目描述 给定一棵\(n\)个点的树,点带点权. 有\(m\)次操作,每次操作给定\(x,y\),表示修改点\(x\)的权值为\(y\). 你需要在每次操作之后求出这棵树的最大权独立集的权值大小 ...

  8. timescaledb 几个方便的api

    timescaledb 提供了内置的api 操作,方便我们进行操作控制 hypertable 控制api add_dimension 向hypertable添加一个额外的分片方式,可以做为分片列有时间 ...

  9. Linux常用命令总结--不断补充

    首先介绍一个很有用的命令:history  查看linux机器上历史命令. 在Linux下查看内存我们一般用free命令:free -m 查看硬盘状况:df -h 查看cpu信息:less /proc ...

  10. mysql表复制create table like和create table as比较

    CREATE TABLE A LIKE B 此种方式在将表B复制到A时候会将表B完整的字段结构和索引复制到表A中来. CREATE TABLE A AS SELECT x,x,x,xx FROM B ...