zoukankan      html  css  js  c++  java
  • 深入理解计算机系统 第二章 信息的表示和处理 Part2 第二遍

    《深入理解计算机系统》 第三版

    第二遍读这本书,每周花两到三小时时间,能读多少读多少(这次看了 29 ~ 34 页)

    第一遍对应笔记链接 https://www.cnblogs.com/stone94/p/9866674.html

    对于跨越多字节的程序对象,有两个规则必须建立

    1、这个对象的地址是多少?

    一般使用所有字节中最小的地址作为对象的地址

    2、这个对象的内容在内存中如何排列?

    有两种排列方法

    (1)大端法

    最高有效为放在前面

    (2)小端法

    最低有效位放在前面

    Android 和 IOS 两个操作系统,都只支持小端法

    对于操作系统和处理器有点混淆,把常见的操作系统和处理器查了一下:

    操作系统
      电脑:Windows、Linux
      手机:IOS、Android
    处理器
      电脑:Intel、AMD
      手机:骁龙(小米)、麒麟(华为)

    对于应用程序员来说,由于机器所使用的字节顺序是完全不可见的,无论为哪种类型的机器所编译的程序都会得到同样的结果

    但是,在以下三个方面,字节顺序可能会引发一定的问题:

    1、在不同机器之间传送二进制数据时,如果小端法机器产生的数据被发送到大端法机器或者反过来时,接收程序会接收到反序的字节

    2、当阅读表示整数的字节序列时,字节序列也很重要,这通常发生在检查机器级程序时

    3、当编写规避正常的类型系统的程序时,字节顺序很重要

    c 语言的 sizeof 函数,返回一个对象或者类型所占的内存字节数

    函数详情可参考:

    https://blog.csdn.net/wzy198852/article/details/7246836

    # 疑问

    1、类型系统是什么?

    2、什么时候需要对象的字节表示?把源程序编译成汇编代码时,在汇编语言中需要吗?

    3、指针、类型、*、& 有点懵

    4、表示字符串和代码方面,引出的关于 ASCII 码和二进制的兼容性不太懂

  • 相关阅读:
    6-Python爬虫-分布式爬虫/Redis
    ES 查询时 排序报错(fielddata is disabled on text fileds by default ... )解决方法
    Intellij Idea webstorm 激活
    Intellij Idea 配置jdk
    java 获取(格式化)日期格式
    js 跳转 XSS漏洞 预防
    CSS去掉背景颜色
    js对象无法当成参数传递 解决方法
    Elasticsearch java api
    java多条件查询SQL语句拼接的小技巧
  • 原文地址:https://www.cnblogs.com/stone94/p/11494124.html
Copyright © 2011-2022 走看看