zoukankan      html  css  js  c++  java
  • 第二章 信息的表示和处理



    2.1 信息存储

      最小的可寻址内存单位,是字节,而不是第一章提到的位。虚拟内存被视为一个非常大的字节数组,内存的每个字节都有一个唯一的数字来标识,称它为地址,所有可能地址的集合则称为虚拟地址空间。

    2.1.1 十六进制表示法

    十六进制转二进制:

    二进制转十六进制:(最左边一组少于4位,补0)

    十进制转十六进制:

    十六进制转十进制:

    2.1.2 字数据大小

     每台计算机都有一个字长,指明指针数据的标称大小。字长还会决定一个极为重要的系统参数——虚拟地址空间。比如现在有一个 32 位机,每一位可以取值 1 或 总共 32 位,能组合的出局就有 232 个,所以它能访问 232 个地址。32位字长限制虚拟地址空间为4千兆字节,写作4GB。因此你如果给 32 位机装上 8G 的内存条,是起不了多大作用的。

    2.1.3 寻址和字节顺序

    小端法:最低有效字节在前面

    大端法:最高有效字节在前面

    2.1.4 表示字符串

      C语言中字符串被编码为一个以null(其值为0)字符结尾的字符数组。

    2.1.5 表示代码

      当程序代码在机器上编译时,会生成一些字节来表示机器代码。

    2.1.6 布尔代数简介

    2.1.7 C语言中的位级运算

      确定一个位级表达式的结果最好的方法,就是将十六进制的参数扩展成二进制并执行二进制运算,然后再转回十六进制。

    2.1.8 C语言中的逻辑运算

     逻辑运算返回的时0或1,它们表示true或者false。如 0x69&&0x55,结果为0x01,即true。

    2.1.9 C语言中的移位运算

    左移:如01100011,丢弃前4位0110,后4位0011左移4位,然后右端补4个0,得到00110000。

    逻辑右移:丢弃后4位0011,前4位0110右移4位,然后左端补4个0,得到00000110。

    算术右移:丢弃后4位0011,前4位0110右移4位,然后左端补4个0(因为最高位为0,故补0),得到00000110。

     Java中,x>>k是算术右移。x>>>k是逻辑右移。

  • 相关阅读:
    HDU2897( 巴什博奕变形)
    HTML小知识点积累
    几种自己主动运行js代码的方式
    leetcode笔记:Contains Duplicate
    【Nutch基础教程之七】Nutch的2种执行模式:local及deploy
    为什么使用模板
    前端编程提高之旅(十)----表单验证插件与cookie插件
    【HDOJ 5399】Too Simple
    进程间通信之-信号signal--linux内核剖析(九)
    iOS类的合理设计,面向对象思想
  • 原文地址:https://www.cnblogs.com/sunnyDream/p/9824978.html
Copyright © 2011-2022 走看看