虚拟地址空间:

大多数 Intel 兼容机采用小端模式,IBM 和 Sun 公司的机器大多数机器采用大端法。
对于很多新的处理器,支持双端法,可以配置成大端或者小端运行。例如基于 ARM
架构的处理器,支持双端法,但是 Android 系统和 iOS 系统却只能运行在小端模式.

下面是代码测试,获取16进制表示:

#include <stdio.h>
#把指针看成指向一个字节的序列,而不是对象的原始数据类型
typedef unsigned char * byte_pointer ;
void show_bytes ( byte_pointer start, int len){int i;cout<<len<<endl;for(i = 0; i < len; i++){// cout<<"==start[i]:"<<start[i]<<endl;printf ( "%.2x " , start[i]);}printf ("\n");
}void show_int (int x){show_bytes ((byte_pointer) &x, sizeof (x));
}
int main()
{show_int(15);return 0;
}

在linux 64位intel cpu上运行可以看出是小端法表示.

逻辑/算术左右移:

当数字不带符号时,右移是左边补零,也就是采用逻辑右移;

当数字带符号时,右移是左边补1,也就是采用算术右移;

【合集】CSAPP-深入理解计算机系统_哔哩哔哩_bilibili

CSAPP--信息的表示与处理相关推荐

  1. CSAPP 第2章 信息表示和处理课后作业

    CSAPP 第二章信息表示和处理 课后作业 2.60 假设我们将一个 w 位的字中的字节从 0 (最低位) 到 w/8-1 (最高位) 编号.写出下面 C 函数的代码,它会返回一个无符号值, 其中参数 ...

  2. CS-APP CP2 信息的表示和处理

    CS:APP CP2 信息的表示和处理 数据的机器表示 大端法: 高位在前 小段法: 低位在前 C语言的移位操作 左移:直接左移右边补0 算数右移:右移时左边补最高位 逻辑右移:右移时左边补0 操作 ...

  3. 《深入理解计算机系统》(CSAPP)读书笔记 —— 第二章 信息的表示和处理

    本章主要研究了计算机中无符号数,补码,浮点数的编码方式,通过研究数字的实际编码方式,我们能够了解计算机中不同类型的数据可表示的值的范围,不同算术运算的属性,可以知道计算机是如何处理数据溢出的.了解计算 ...

  4. 《深入理解计算机系统》(CSAPP)第二章——信息的表示和处理 知识点总结

    CASPP 第二章 信息的表示与处理 2.1 信息存储 2.1.1 字数据大小 2.1.2 寻址和字节顺序 2.1.3 布尔运算 2.1.4 位移运算 2.2 整数表示 2.2.1 整数类型数据 2. ...

  5. c++中有表示正无穷的数吗_阅读:贯穿编程人生CSAPP[2]信息表示

    基本数据类型 让我们复习一下C语言中基本数据类型的内存占用(单位为字节): 这其实是很基础的知识,但是值得一提的是,表中只有两个数据类型在32位和64位计算机中使用了不同的字节数,一个是long in ...

  6. 六星经典CSAPP笔记(2)信息的操作和表示

    2.Representing and Manipulating Information 本章从二进制.字长.字节序,一直讲到布尔代数.位运算,最后无符号.有符号整数.浮点数的表示和运算.诚然有些地方的 ...

  7. CSAPP:第二章——信息的表示和处理

    文章目录 一.信息存储 1.1 十六进制表示法 1.2 字数据大小 1.3 寻址和字节顺序 1.4 表示字符串 1.5 表示代码 1.6 布尔代数简介 1.7 C语言中的位级运算 1.8 C语言中的逻 ...

  8. 2018-2019-1 20165206 《信息安全系统设计基础》第九周学习总结

    - 2018-2019-1 20165206 <信息安全系统设计基础>第九周学习总结 - 教材学习内容总结 计算机系统的主存被组织成一个由M个连续的字节大小的单元组成的数组.每个字节都有一 ...

  9. csapp 、sicp 、深入理解计算机系统、 计算机程序的构造和解释

    CSAPP 第一版的英文版 深入理解计算机系统第一版中文版  这个是csdn账号  这里上传文件大小在10M以内  这个pdf是19+M的 深入理解计算机系统第二版的中文版下载 第一版英文版的介绍原书 ...

  10. 2017-2018-1 20155222 《信息安全系统设计基础》第8周学习总结

    2017-2018-1 20155222 <信息安全系统设计基础>第8周学习总结 课上内容补做 课上作业2 源程序: #include main(int argc,char *argv[] ...

最新文章

  1. 趣谈GC技术,解密垃圾回收的玄学理论(一)
  2. Java课程03总结
  3. java svnkit_java svnkit实现svn提交,更新等操作
  4. (Object-C)学习笔记(一)--开发环境配置和与c语言的区别
  5. 《西线无战事》:合上书的那一刻:只想痛哭
  6. 论文浅尝 - ICML2020 | 通过关系图上的贝叶斯元学习进行少样本关系提取
  7. Ubuntu系列10.04、11.04、12.04等虚拟机中安装VMware Tools
  8. Flink 最佳搭档:开发部署平台 Zeppelin 的自白
  9. linux 查看tomcat日志 关键字
  10. 一篇文章带你了解系统流程图和业务流程图的区别
  11. 荣耀 MagicBook 14 2022配置怎么样 值不值得买
  12. 银行业务分析(数据整合)
  13. 不是技术也能看懂云计算,大数据,人工智能
  14. Discord账号被封怎么办?Discord账号解封申诉方案
  15. 遭遇蚊子的獠牙,想起一种叫黄鸡婆的小虫子
  16. 空间金字塔池化Spatial Pyramid Pooling
  17. 【ppt制作软件】Focusky教程 | 怎样实现表格的行列转换?
  18. (十三)常见开发工具及QC中站点管理、项目自定义管理常见操作
  19. (翻译)承诺与一致原理(Commitment consistency)
  20. halcon图像缩放

热门文章

  1. jmeter性能测试报告_用 JMeter 做接口测试的优劣浅析
  2. PAT乙类之1012 数字分类 (20 分)
  3. 恕我直言,很多小样本学习的工作就是不切实际的
  4. 这个NLP工具,玩得根本停不下来
  5. Spring Cloud Config采用数据库存储配置内容【Edgware+】
  6. 到达一个数 Reach a Number
  7. 修改maven打包名字
  8. 千万级负载均衡架构设计
  9. Oracle函数translate()的用法
  10. linux-03-Vim使用+账号用户管理