程序优化之\"变量名长短\",内存逻辑地址,物理地址

简介: 网上有着不少常见的程序优化点的文章,比如PHP中使用单引号、双引号的性能差别等等。 但这其中并没有说到”变量名长度”会影响性能,那么它为什么不会影响性能呢,就需要引入我们今天要讲的这篇文章的知识了。

程序优化为何没有说明”变量名长度”


网上有着不少常见的程序优化点的文章,比如PHP中使用单引号、双引号的性能差别等等。 但这其中并没有说到”变量名长度”会影响性能,那么它为什么不会影响性能呢,就需要引入我们今天要讲的这篇文章的知识了。


编译过程内存地址


我们的程序代码在运行的时候(或者之前)需要先经过编译器的处理,编译成更为底层的代码。 编译时是不分配内存的。此时只是根据声明时的类型进行占位,到以后程序执行时分配内存才会正确。所以声明是给编译器看的。变量名在编译过后的程序中是以内存地址存在的。所以它的长度不会影响程序性能,只会占用你的代码文件大小(基本可以忽略) 引用一下文献说明


接下来,汇编器会将汇编代码转换为二进制目标代码文件。目标代码文件是机器代码的一种形式,它包含所有指令的二进制表现,但是还没有填入全局值的地址。


原文博客


地址


程序如何确认内存地址


我们都知道,所有内存数据都是储存在我们硬件内存条上面的,那么它的空间是固定的,并且某个位置被占用的时候,应该是不能被其他程序使用的,否则将会内存冲突。 (一个空教室,小明已经坐了一个位置,其他同学不能坐在他大腿上了诶)


物理内存地址


上面这个概念就是物理内存地址,描述说明在硬件中实际的储存位置(好比 二排三列)


逻辑内存地址


那么我们的程序在编译完成之后,怎么确定它在运行时到底使用哪一块内存地址呢? 使用的是相对的逻辑内存地址。 比如我们有以下一份PHP代码


<?php
$a = 1;
$b = 3;


那么编译后的程序可能如下(用文字描述)


Location = 向系统申请内存地址,并返回物理内存地址
申请一块内存,储存代码$a的值,对应的物理内存地址为 ·Location + 1·
申请一块内存,储存代码$b的值,对应的物理内存地址为 ·Location + 1 + 1·
这里用1来代表一个变量需要占用的大小(仅仅为了说明,每个语言的数据结构不同)


这就是相对的逻辑内存地址了。

目录
相关文章
|
2月前
|
存储 算法 Java
Java 内存管理与优化:掌控堆与栈,雕琢高效代码
Java内存管理与优化是提升程序性能的关键。掌握堆与栈的运作机制,学习如何有效管理内存资源,雕琢出更加高效的代码,是每个Java开发者必备的技能。
94 5
|
2月前
|
存储 缓存 监控
Docker容器性能调优的关键技巧,涵盖CPU、内存、网络及磁盘I/O的优化策略,结合实战案例,旨在帮助读者有效提升Docker容器的性能与稳定性。
本文介绍了Docker容器性能调优的关键技巧,涵盖CPU、内存、网络及磁盘I/O的优化策略,结合实战案例,旨在帮助读者有效提升Docker容器的性能与稳定性。
242 7
|
3月前
|
并行计算 算法 测试技术
C语言因高效灵活被广泛应用于软件开发。本文探讨了优化C语言程序性能的策略,涵盖算法优化、代码结构优化、内存管理优化、编译器优化、数据结构优化、并行计算优化及性能测试与分析七个方面
C语言因高效灵活被广泛应用于软件开发。本文探讨了优化C语言程序性能的策略,涵盖算法优化、代码结构优化、内存管理优化、编译器优化、数据结构优化、并行计算优化及性能测试与分析七个方面,旨在通过综合策略提升程序性能,满足实际需求。
99 1
|
3月前
|
存储 缓存 监控
如何使用内存监控工具来优化 Node.js 应用的性能
需要注意的是,不同的内存监控工具可能具有不同的功能和特点,在使用时需要根据具体工具的要求和操作指南进行正确使用和分析。
91 31
|
3月前
|
存储 算法 Java
Java内存管理深度剖析与优化策略####
本文深入探讨了Java虚拟机(JVM)的内存管理机制,重点分析了堆内存的分配策略、垃圾回收算法以及如何通过调优提升应用性能。通过案例驱动的方式,揭示了常见内存泄漏的根源与解决策略,旨在为开发者提供实用的内存管理技巧,确保应用程序既高效又稳定地运行。 ####
|
3月前
|
存储 缓存 JavaScript
如何优化Node.js应用的内存使用以提高性能?
通过以上多种方法的综合运用,可以有效地优化 Node.js 应用的内存使用,提高性能,提升用户体验。同时,不断关注内存管理的最新技术和最佳实践,持续改进应用的性能表现。
171 62
|
3月前
|
监控 安全 程序员
如何使用内存池池来优化应用程序性能
如何使用内存池池来优化应用程序性能
|
3月前
|
存储 监控 Java
深入理解计算机内存管理:优化策略与实践
深入理解计算机内存管理:优化策略与实践
|
3月前
|
缓存 算法 Java
本文聚焦于Java内存管理与调优,介绍Java内存模型、内存泄漏检测与预防、高效字符串拼接、数据结构优化及垃圾回收机制
在现代软件开发中,性能优化至关重要。本文聚焦于Java内存管理与调优,介绍Java内存模型、内存泄漏检测与预防、高效字符串拼接、数据结构优化及垃圾回收机制。通过调整垃圾回收器参数、优化堆大小与布局、使用对象池和缓存技术,开发者可显著提升应用性能和稳定性。
69 6
|
2月前
|
存储 监控 算法
深入探索Java虚拟机(JVM)的内存管理机制
本文旨在为读者提供对Java虚拟机(JVM)内存管理机制的深入理解。通过详细解析JVM的内存结构、垃圾回收算法以及性能优化策略,本文不仅揭示了Java程序高效运行背后的原理,还为开发者提供了优化应用程序性能的实用技巧。不同于常规摘要仅概述文章大意,本文摘要将简要介绍JVM内存管理的关键点,为读者提供一个清晰的学习路线图。

热门文章

最新文章