catalog

  • 32位和64程序的区别

32位和64程序的区别

我们这里说( 32位, 还是64位), 说的是: (这个exe文件), 而不是(电脑)!!!

编译器, 可以生成 (32位的程序), 也可以生成 (64位程序); 只是(64位程序)无法在(32位电脑)运行; 但这不是我们这里要讨论的


虚拟空间

程序在运行起来后, 都会映射到 一个(虚拟地址空间)

这个虚拟地址空间的结构是:
0地址 -> [用户区: (text代码, data数据, 堆(new), 栈)] -> [操作系统内核区: (OS对这个程序维护一些信息, 放在这里)]
注意, 这个结构, 是说的: 程序的 虚拟地址空间!!! 不是物理的内存, 物理内存不是这个结构

这个虚拟空间的大小是: 该程序的位数 (注意, 与机器的位数无关)

___32位的程序: 虚拟空间大小为4G, 系统内核区为1G, 用户区为3G 栈是8MB, 堆是3GB

___64位的程序: 虚拟空间大小为…G(非常大), 他的 (系统内核区, 用户区, 栈, …)的大小, 也与32位不同


这个(虚拟空间大小)的大小, 你可以通过 (sizeof( void *))获得;
___32位程序sizeof( void *)为 4, 而64位程序为 8


类的大小, 对齐规则, 也是不同的;

class Foo{int d0;QString d1;

在32位程序里, sizeof( Foo)为 8; 而在64位程序里, 大小为40!!! 差距还是很大的

C++_32位和64程序相关推荐

  1. 64 大小_32位和64位Windows系统差别在哪里

    如何确定32位和64位系统? 计算机体系结构是32位还是64位取决于计算机内部的处理器(CPU).目前,大多数计算机处理器属于这两个类别之一. 64位处理器比对应的32位处理器指数级更强大,因为它们可 ...

  2. arm b bl 地址无关码_32位和64位下的arm_pwn初探

    32位和64位下的arm_pwn初探 前言: pwn的学习之路一直在进行,今天看了arm_pwn,搞环境就搞了半天,琢磨工具使用到做题,这里总结下,希望能帮助到大家,少走一点弯路,后期有机会继续更新. ...

  3. win764位和32位有什么区别_32位、64位它们是什么关系?它们又有什么区别?

    现在熟悉系统的同学们,都知道现在Windows系统都有32位和64位的区分. 其实,x64其实就是64位,x86其实就是32位,在口语中我们说32位会多于x86. 1.硬件 在硬件上,32 位 软件和 ...

  4. 64位处理器_32位和64位的Windows 10和处理器(CPU)有什么区别

    当你下载Windows 10.Office或任何其他软件时,可能会注意到有32位和64位版本可用,这时你可能会想到一个问题,我需要哪个? 在本文中,你可以了解32位和64位Windows 10之间的区 ...

  5. win 程序32位或者64程序如何区分

    使用notepad++打开exec文件,找到PE,再后面两个空格后第三个字符就是标记了,如果是字母L的话,就是32位应用程序,如果是d?就表示是64位应用程序

  6. python 64位程序 打包用于32位系统_python分别打包出32位和64位应用程序

    由于我们分发的python应用可能运行在64位环境,也可能运行在32位环境,所以我们需要为同一套应用代码配置两套打包环境,怎么配置? 步骤如下 1,在电脑上分别下载安装32位和64位的python,安 ...

  7. 32位dll注入到64位程序_你用的32位还是64位?有什么区别呢?

    (给程序员零距离加星标,了解项目开发.) 粉丝福利:小编会从今天留言中抽选3名小伙伴赠送现金红包,感谢大家一直以来的支持!文末见喽!通过前面两篇文章的学习,外甥对电脑的产生了各种好奇,差点把自己电脑拆 ...

  8. [思考]-32位的应用程序和64位的应用程序有什么区别

    文章目录 1.32位的应用程序和64位的应用程序有什么区别 2.在aarch64的linux os中,是否同时支持运行32位app和64位app ★★★ 链接 : 个人博客导读首页-点击此处 ★★★ ...

  9. 32位和64位系统对于程序员的影响

    win32,win64编程永恒;语言编程需要注意的64位和32机器的区别 一.数据类型特别是int相关的类型在不同位数机器的平台下长度不同.C99标准并不规定具体数据类型的长度大小,只规定级别.作下比 ...

最新文章

  1. 浙大首届AI专业本科生将于9月入学,纳入竺院图灵班
  2. vue怎么运行html,怎样运行一个vue.js项目
  3. pytorch:ResNet50做新冠肺炎CT照片是否确诊分类
  4. 如何确定python开发环境已经配置好_搭建 python 开发环境 前面安装选位置我直接回车了现在我想测试查看目录该怎么办...
  5. 搜索图片及相似度探秘 一
  6. Python多进程使用队列共享数据协同判断素数
  7. node.js提供的服务器live-server的使用
  8. 计算机辅助电话调查系统,基于XML题型定制的计算机辅助电话调查系统问卷设计与实现...
  9. 微信限制内置浏览器的访问方法
  10. 线性代数与矩阵论 定理 1.3.9 唯一析因定理
  11. 量化指标公式源码_最牛通达信量化副图指标公式源码.doc
  12. 人力资源管理系统erp
  13. 制度罚则-- 代码走查规范
  14. 支付宝手机网站支付,错误代码 insufficient-isv-permissions 错误原因: ISV权限不足
  15. 黑苹果开启核显加速_「黑苹果」关于双显卡正确开启核显加速
  16. A Survey on Conversational Recommender Systems
  17. 树的左视图(Java)
  18. ROS可以不扫描地图,自己制作地图
  19. Spring Boot+Vue/前后端分离/高并发/秒杀实战课程之spring Security快速搭建oauth2 内存版身份认证
  20. 详解TCP/IP协议栈面临的五大网络安全问题

热门文章

  1. 研发人员如何做绩效考核
  2. 通用嵌入式系统软件测试平台的设计
  3. 建筑力学与结构【6】
  4. 最最完整的redis工具类(redis工具类,用这个就够了)
  5. Cesium加载模型两种方式
  6. 英语发音技巧,让你的发音更地道!!!
  7. Arcgis流域分析 实验报告
  8. 华文慕课北大操作系统陈向群第四章课后习题解析
  9. 程序员科班出身的专业有哪些?
  10. 【Linux kernel】自旋锁和互斥锁