一: 进制转换
  在计算机中, 数据都是以0和1来表示的
  进制: 进位制
  十进制: 数字由0~9这10个数字来表示, 逢10进1位
  0 1 2 3 4 5 6 7 8 9 10
  二进制: 数字由0和1这两个数字来表示, 逢2进1位
  0 1 10 11 100 101 110 111 1000....
  八进制: 由0~7来表示一个数字, 逢8进1
  0 1 2 3 4 5 6 7 10 11 ...
  十六进制: 由0~9和a~f来表示一个数字, 逢16进1
  0 1 2 3 4 5 6 7 8 9 a b c d e f 10...

  二进制: 0b10010 11000
  八进制: 01234567
  十六进制: 0xabcd

进制转换:
  非十进制转十进制
  这一位的数字 * 进制 ^ (位数 - 1)

  0b1001 = 1x2^3 + 1 = 9
  0b1100110 = 2^6 + 2^5 + 2^2 + 2^1
  
  0123 = 1x8^2 + 2x8 + 3
  
十进制转非十进制
  辗转相除法: 让一个数字除进制, 将得到的商再除进制, 直到商位0停止, 将每一步得到的余数倒着连起来

  二进制转八进制/八进制转二进制
  三位一取
  0b001 100 110 -> 0146
  0176 -> 0b1111110

二进制和十六进制的转换
  四位一取
  0b0011 0011 0101 -> 0x335
  0xA9F -> 0b101010011111

十进制和二进制
  0 -> 0b0
  1 -> 0b1
  2 -> 0b10
  
二: 原码, 反码, 补码

  二进制中每一位 称为bit
  8bit ==> 1byte
  1024byte ==> 1kb
  1024kb ==> 1mb
  1024mb ==> 1GB
  1024GB ==> 1TB
  1024TB ==> 1PB
  1024PB ==> 1EB
在符号位上用"0"表示正数;用"1"表示负数
1: 原码
一个数字的二进制表示形式

2: 反码
  除符号位, 每一位取反

3: 补码  

  正数: 等于本身
  负数: 反码 + 1

三: 标识符
  用来表示一条数据
  - 只能由字母数字下划线和@符号组成
  - 标识符不能以数字开头
  - 如果包含@, 那么@必须在首位
  - 标识符不能是系统关键字
  - 标识符的命名应该望文知意
  - 标识符应该遵循驼峰命名法
  如果一个标识符由多个单词组成,那么第一个单词首字母小写,从第二个单词开始,以后的每个单词都要首字母大写

四: 变量, 常量
  一个标识符表示的数字可以发生改变, 那么就称为--变量
  一个标识符表示的数字不会发生改变, 那么就称为--常量

五: 数据类型(基本数据类型/引用数据类型)
  整型(有符号无符号的差别就是最高位是否用来表示符号)
  有符号整型
  字节型 sbyte 1byte -128 ~ 127
  短整型 short 2byte -2^(位数-1) ~ 2^(位数-1) -1
  整型 int 4byte
  长整型 long 在32位机器占4字节,在64位机器占8字节

  无符号整型
  字节型 byte 1byte 0 ~ 255
  短整型 ushort 2byte 0 ~ 2^(位数) - 1
  整型 uint 4byte
  长整型 ulong 8byte

  浮点型
  float 4byte
  double 8byte
  decimal 16byte

  布尔型
  bool 1byte true/false

  字符型
  (任何占用1位的,都是字符)
  char 2byte
  - 在程序中, 单个字符需要用''引起来    '你' 'h' ')'
  - 一个字符只能是1位, 不能多也不能少
  'hello' '' ' '

  - 默认值是 '\0'

  字符串:就是一系列字符串起来, 用string来表示
  "hello world"
  ""

六: 如何在代码中写一个变量
  数据类型 标识符 = 初始值
  - 变量不能重复定义

  const关键字修饰的就是常量
七: 注释
  对一段程序的说明
  注释不会被编译, 所以可以在注释里随便写
  // 单行注释
  /*
  多行注释
  */

进制转换&数据类型(1)的更多相关文章

  1. Java进制转换, 数据类型, 运算符

    1:进制转换 转换规则: 先把数据的每一位上的系数乘以对应基数的次幂(低位从零开始),然后相加即可 十进制到其他进制 规则:除基取余,直到商为0,最后将余数反转 十进制到二进制: 除2取余,直到商为0 ...

  2. JAVA基础学习之String、StringBuffer、StringBuilder、基本数据类型的使用、整形进制转换、集合Collection、Vector、ArrayList、LinkedList、HashSet、TreeSet等(3)

    主函数类MainDemo.java package com.itcast.test20140109; import java.util.ArrayList; import java.util.Coll ...

  3. Java基础复习之一篇:关健字,标识符,注释,常量,进制转换,变量,数据类型,数据类型转换

    1.关健字 1.1.被Java语言赋予特定意义的单词(如:class,interface,public ,static) 1.2.全部是小写 1.3.注意事项(goto和const作为关健字保留起来) ...

  4. python 数据类型、进制转换

    数据类型 存储单位 最小单位是bit,表示二进制的0或1,一般写作b 最小的存储单位是字节,用byte表示,1B = 8b 1024B = 1KB 1024KB = 1MB 1024MB = 1GB ...

  5. 大数据学习--day02(标识符、变量、数据类型、类型转换、进制转换、原码反码补码)

    标识符.变量.数据类型.类型转换.进制转换.原码反码补码 标识符: java50个关键字不能做标识符,以数字开头不能做标识符(这个老是忘记写一个类名的时候) 变量: 变量分为成员变量和局部变量,注意作 ...

  6. 2 Java基础语法(keyword,标识符,凝视,常量,进制转换,变量,数据类型,数据类型转换)

    1:keyword(掌握) (1)被Java语言赋予特定含义的单词 (2)特点: 所有小写. (3)注意事项: A:goto和const作为保留字存在. B:类似于Notepad++这种高级记事本会对 ...

  7. python27期day03:字符串详解:整型、可变数据类型和不可变数据类型、进制转换、索引、切片、步长、字符串方法、进制转换、作业题。

    1.%s: a = "我是新力,我喜欢:%s,我钟爱:%s"b = a%("开车","唱跳rap")print(b)2.整型: 整数在Pyt ...

  8. 【String与基本类型之间的转换】以及【进制转换】

    1. 基本数据类型---->字符串类型: 方法一:使用连接一个空字符串,例如  基本数据类型+“” : 方法二:静态方法 String.valueOf(),具体有: String.valueOf ...

  9. C# 进制转换 (没有数值的长度限制)

    曾经在大学时做过一个c的进制转换算法,那时由于技术的局限性,数值的大小受到限制(系统数据类型长度限制),多年以后,自己那台学习机陈旧后感觉要报废了,整理了一下里面的东西,偶尔在一个角落里发现了这个转换 ...

随机推荐

  1. Webpack配置及使用

    ##如何将js模块化 ### module.exports() ### module.require() ### 自定义文件,进入时需要./ ### npm下载得到文件,不需要./ ##如果使用第三方 ...

  2. win7 数据源只有 SQL SERVER, WIN7 64bit 环境使用 access 作为 CIS的数据源

    最近换了个工作电脑,安装的是 WIN7 64BIT,结果配置CIS数据源的时候出现问题了,默认的数据源只有 SQL SERVER,没有ACCESS的数据源.后来在网上寻找了一圈后,找到了解决方法: C ...

  3. [Android]Android布局优化之<include />

    转载请标明:转载于http://www.cnblogs.com/Liuyt-61/p/6602891.html -------------------------------------------- ...

  4. iOS获取当前路由信息

    导入头文件: #import <SystemConfiguration/CaptiveNetwork.h> - (void)currentWifiSSID {    // Does not ...

  5. 重识linux-linux系统服务相关

    重识linux-linux系统服务相关 1 tcp wrappers 特殊功能  应用级防火墙 2 系统开启的服务查看 top,ps 命令 3 查看系统启动的服务 1) 找到目前系统开启的网络服务 n ...

  6. 精通Web Analytics 2.0 (12) 第十章:针对潜在的网站分析陷阱的最佳解决方案

    精通Web Analytics 2.0 : 用户中心科学与在线统计艺术 第十章:针对潜在的网站分析陷阱的最佳解决方案 是时候去处理网站分析中最棘手的一些问题了,然后获得属于你的黑带,这是成为分析忍者的 ...

  7. 开源 人脸识别 openface 实用介绍 实例演示 训练自己的模型

    1.OpenFace 是 卡耐基梅陇(CMU)大学的一个图像+机器学习项目,整体程序包含:人脸发现,特征提取,特征神经网络训练,人脸识别这四部分. github   https://github.co ...

  8. 《The book of shaders》读书笔记

    最近几天在GitHub上看到一个关于Shader开发的开源项目thebookofshaders,其中一个贡献者是Patricio Gonzalez Vivo,这个开源项目囊括了<The book ...

  9. office转pdf转swf

    系统环境:CentOs5.5用到的工具:Openoffice 3 , Pdf2Swf tool , Jodconverter , FlexPaper 网上找了些资料,早有人已经实现了这样的功能,只不过 ...

  10. Vim 常用命令和编辑方法

    命令模式 :e <path/to/file> → 打开一个文件 :w → 存盘 :wq → 存盘 + 退出 (:w 存盘, :q 退出)   (陈皓注::w 后可以跟文件名) :savea ...