CSAPP--信息的表示与处理
生活随笔
收集整理的這篇文章主要介紹了
CSAPP--信息的表示与处理
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
?虛擬地址空間:
大多數 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--信息的表示与处理的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: pandas基础知识
- 下一篇: 动态规划——数塔问题