GCC 术语表
上一篇 / 下一篇 2007-04-24 12:11:06 / 个人分类:其他
#gm+j^4q.Sd0 absolute address (绝对地址)
绝对地址是一个惟一的可用来指定某个内存字节的数字数值。参见相对地址。
o5pLs1}MWO B0address (地址)
c(V&X(oGn5GyD@7EV0参见绝对地址和相对地址。 51Testing软件测试网Ox,|v jJ
aggregate (聚集)
51Testing软件测试网t5uNi t,^W包含多于一个基本数据类型的数据类型。例如,数组是一种聚集, C 的结构( struct )也是。
"n+|:| j nw/t0aliasing (别名机制)
c)\T:q6Y2^ h6`5p0同一内存地址可直接或间接地通过两个或多个不同名字(可能还有不同的数据结构)进行访问,这被叫做别名。由于在寄存器中保留数值是比较常见的做法,因此这是对于优化采取的特殊考虑。
hC4[4Ebz/y(v0ANSI ( American National Standards Institute ,美国国家标准协会)
5T"s*}K8d,o_ZB En0管理和协调美国自发标准的组织。 51Testing软件测试网n/x.Y$z Ibp+w"YG.n8Q
archive (文档)
-`+|w0U A,V/x8h4B0参见库。 51Testing软件测试网S[;lv kQf0^
assembler (汇编器)
51Testing软件测试网2\%kV|(w,})U一个平台相关的程序,它读取汇编语言源文件(机器代码的助记表示)并将其翻译为作为连接程序输入的二进制目标文件。
%Vn E-u NKC2q|^-k0backtrace (回退跟踪)
51Testing软件测试网3eG+]9W1^-~2e0M&oCGNU 调试器可以打印函数名和地址的列表,它会被调用以达到程序的当前执行点。这些信息,包括函数地址和参数值,称为回退跟踪。
R+q#GXBs5a0BFD ( Binary File Descriptor ,二进制文件描述字 )
8HnPXO0C+A7wh0包含处理各种二进制文件格式完成各种底层操作的例程的库。
mBm [jD/? `0BSD ( Berkeley Software/Standard Distribution , Berkeley 软件 / 标准发行)
51Testing软件测试网hh!GM b!K\-l1i一种 UNIX 操作系统。它也是几种其他现代 UNIX 系统的基础。参见 SVR4 。 51Testing软件测试网*M.Hd*Z2J
bss
51Testing软件测试网[|p7X6x7D;SZ由 UNIX 连接程序生成的可执行文件的未初始化数据段。它包含的数据只有地址但不包含任何空间。因此,直到程序被加载时才会分配空间。在可执行文件中, bss 变量只被赋以名字、尺寸和位置。参见 text 和 data 。
'd-Q-DR/Y0built in function (内嵌函数)
51Testing软件测试网E+JCO9uk!fS由编译程序所生成的函数体称为内嵌函数。一个内嵌函数可以是相应标准库函数的优化版本、编译程序的附加功能或是实现诸如变长参数列表等内部使用的函数。 51Testing软件测试网@1q6~9\\Q]w"W
bytecode (字节码)
V;keqN8K7T"A0编译 Java 程序所生成的目标代码的可移植形式。字节码由 Java 虚拟机解释以执行 Java 程序。 51Testing软件测试网t#Y8c3uf#E
C89
@7qMRf;K;`0b01989 ANSI C 标准。
I?}Z$U.jC]0C99
51Testing软件测试网 s&W(?nW V:P#H1999 ANSI C 标准。 51Testing软件测试网H I3_kq/_
calling convention (调用规范)
.cq?~s0参见调用序列。
jJT Kf*u2k0EslY0calling sequence (调用序列)
WU&ZY!V0用来调用函数的汇编语言的语句序列。该序列设置需要传递的参数、保存返回的地址以保证可以找到调用函数,执行调用并管理返回值(如果有的话)。也叫做调用规范。 51Testing软件测试网]dqLI6y1x@2K g*}y
CCP ( Conditional Code Propagation ,条件代码传播)
xv rOET ~0一种优化技术,可以发现某值对所有可能的执行路径均为常量,并用这一事实来探测和删除不可能被执行的代码。 51Testing软件测试网4Qa e'ewX#kp
cfront
51Testing软件测试网a+e@)nn3?7F2X+y4W最初的 C++ 实现是一个称为 cfront 的 AT&T 程序,它将 C++ 源代码翻译为 C 源代码。 51Testing软件测试网0U0J!Y GU'v"}
class (类)
51Testing软件测试网,bZb,Xe$zkH1. 在面向对象编程中,一个类就是一个对象类型的定义。由它所生成的对象,由于它们具有相同的接口和行为集,称它们属于同一类。 2. 在 Java 中,包含已编译类的文件称为类文件,或简称为类。 51Testing软件测试网7_2Lf:]t`6H{
clobber (破坏)
Df)Ym9q0F|0如果存储位置(通常为一个寄存器)已经被用作一个临时工作区,它就不再保存所预期的数值,这个存储位置就称为被破坏( clobbered )了。
`oKjxZ0CNI ( Cygnus Native Interface , Cygnus 本地接口)
T1P,s8s1d{R0在 C++ 中,用于编写本地 Java 方法的工具。参见 JNI 。
${:Z(D:Vc0code (代码)
51Testing软件测试网5IS'Q C"poj O0ny这个术语是指计算机上运行的任何形式的指令列表。代码可以是所有形式,从人可读的编程源码到机器可读的操作码的位模式。 51Testing软件测试网#U6m,z gOw|
code propagation (代码传播)
0K&hN2Wz t r ~'s w0参见 CPP 。 51Testing软件测试网b+v|.z7?!wN
coercion (自动转换)
1e[%^M`0由一种基础数据类型到另一种的自动转换(没有强制类型转换或函数调用)。 51Testing软件测试网8o9kd^O;cESQpG;g
COFF ( Common Object File Format ,通用目标文件格式)
\E4BXmd y0一种可跨系统移植的并由各种不同的汇编器和连接程序所了解的目标文件的标准格式。参见 ECOFF 和 XCOFF 。 51Testing软件测试网dI3]N'`#Ps6TTN/E
COMDAT ( Common Data ,通用数据)
可以在不只一个目标文件中被复制的一种数据或可执行项(或项目的集合)。当将目标
`SQ3|erI"D0
Yd%v6h.C8mY&~1[0文件和库或可执行体组合起来时,连接程序会去掉所有通用数据,只留下其中一份数据。这也称为合拢或通用数据合拢。 51Testing软件测试网)K'^qo ~QZ,z5Bp
51Testing软件测试网W ^)UnG4R2n$f$D
common (通用)C8Xs"Q`0可为公用块分配的全局变量属性。 51Testing软件测试网;n P#Q [K
common block (公用块)
51Testing软件测试网;\@8\:so,M#F^^i:`HSGNU 连接程序创建一个公用块作为全局变量的分配空间。如果不同的目标文件多次声明了相同的全局变量,它们会被解析为公用块中单独的一个变量。参见 COMDAT 。 51Testing软件测试网6dz@wF'gw8R]
compilation unit (编译单元)
51Testing软件测试网OACC#\q可被编译为单独目标文件的单独源代码单位。它通常就是单独的一个源文件,但也可以包含其他辅助编译的源代码(如 C 程序中 #include 文件)。也称为翻译单元。
Ic&m7o;U U$Z8X~0compiler (编译程序)
rQ.T{h\0读取计算机程序的源文件(或文本文件)的软件集合,可将指令翻译成计算机可执行的格式。编译程序也称为翻译器( translator )。 51Testing软件测试网6O1r-f;L8h y9D
copyleft (版权所属)
51Testing软件测试网-W,\$hWE6Y同通用许可证,它声明程序是自由软件并且所有修改和扩展的软件版本均可以自由发行。参见 GPL 。 51Testing软件测试网iA%wfddk;@ o
cross compile (交叉编译)
v8G(CD@0使用一种编译程序创建在完全不同平台上执行的可执行文件。 51Testing软件测试网,^ S Z9RE|#UW
CPP ( C Preprocessor , C 预处理程序)
DN8i5O1e0预处理程序读取程序源码,并处理其中的指示字以产生源码的修改版本。 51Testing软件测试网,l&j)v7xk9n
cruft
51Testing软件测试网+Z XO#O:YB-P\-h随着软件的发展,以及经历了修改 bug 和更新的若干周期,它的部分代码已不再使用但仍然保留在源码中。这种代码称为 cruft 。 cruft 的尺寸范围可由一两行无用代码到整个源文件模块。由于很难识别 cruft ,去除 cruft 往往很困难。
x)l W#u(~M([3{0CSE ( Common Subexpression Elimination ,通用子表达式消除)
.@:[ X#^:HL(h-|&^0一种优化技术,它可以识别重复的表达式并重用它的值,而不是再次执行相应的计算。参见 GCSE 。
S,f$S5L)P$Fw~+G0ctor
51Testing软件测试网.uEyuR9? DPx构造函数 constructor 的通用缩写。参见 dtor 。 51Testing软件测试网l4L'wFsp/Z z'p
CVS ( Concurrent Version System ,同步版本系统)
`$sb4M`s`:q0一种版本控制系统,它可以维护文本文件的版本历史信息。设计它是为使广泛分布于各地的不同开发者可同时访问。 51Testing软件测试网;K;[]oMMH)CjD
data
y:_:]4TB]"V%K1V0由 UNIX 连接程序生成的可执行文件的一部分,其中包含的数据具有初始值。该段包含的项具有名字、大小,且会分配相应的空间包含它的数值。参见 bss 和 text 。 51Testing软件测试网wB9\mi(KyQ
DBX
51Testing软件测试网b6Y&^BIm一种交互式调试器,它可以用来一行行地跟踪程序的执行。 DBX 是一种命令行调试器,但在许多变体中它具有 X GUI 界面和 emacs 界面。 51Testing软件测试网md$L)b oH Y
DCE ( Dead Code Elimination ,不可达代码去除 )
kFPL7h5u0J*bd0一种删除不可能被执行的代码的优化技术。
p-JBy*K'v.Y4ZJ0dead code (不可达代码)
.^3E r#A)t }0在优化期间,可能留下某些代码但从不会被执行。这些就是不可达代码。优化器应该去除这些代码。
:W)_k%C;s0DoG?t0demangle
51Testing软件测试网&uU9l cN$zB;v,M解析出编码在已经拆分( mangle )了的函数名中的描述信息的过程。参见 mangle 。
8D]agPbQ){D0deprecated (已废止的)
51Testing软件测试网aHZJr,~8[任何不再需要的编译程序的选项或功能(或是因为某些原因而认为不再恰当的)被称为是已废止的。它仍然存在但在以后的编译程序版本中可能去除。 51Testing软件测试网NW ]7[2`|1u.~Q|
dereference (去引用)
51Testing软件测试网x&Iv(|[0^表达式可能会涉及保存在指针中的地址。用这种方式使用的指针就称为是去引用的。
[,Udr:D:m(y9Y0directive (指示字)
51Testing软件测试网4v,A$?,S RWrK2?+k1. 源代码中使用井号 (#) 开头的命令,它由预处理程序处理。 2. 在汇编语言中,一条指示字就是一条针对汇编器的指令,而不是产生代码的操作码。汇编器指示字也称为伪操作。
OCcP-@/NK0distention (膨胀)
\mlE,_*nC&K)B0该名字用于某些特定 Fortran 语言扩展,现在均认为非常“丑陋”而不该使用。通过 -fugly-* 标记, g77 可支持某些扩展。 51Testing软件测试网 C5`!S~&J
dtor
51Testing软件测试网 DK0H| _G,aO析构函数 destructor 的通用缩写。参见 ctor 。
&c`0P'[&I:E[)T0DWARF ( Debugging With Attribute Format ,带属性的调试格式)
PPDEo+tn0一种用来在目标代码中插入调试信息的格式。 51Testing软件测试网vn#x$afb]+b
DWARF2 ( Debugging With Attribute Format 2 ,带属性的调试格式 2 )
51Testing软件测试网m)e1[Q~DWARF 的更新版本,该格式用来在目标代码中插入调试信息。
%e!s"_:J0b}+}-r0dynamic library (动态库)
7Y`f:Y|'K]0参见库。 51Testing软件测试网;G"S;r#^8w
ECOFF ( Extended Common Object File Format ,扩展通用目标文件格式)
51Testing软件测试网_n.Y0w0s'R G目标文件的标准格式,它具备系统间的可移植性,且不同汇编器和连接程序均了解该格式使用。参见 COFF 和 XCOFF 。 51Testing软件测试网}/H%V%|&J3a,S9W
EH
gjS{&H8Cd8ui0异常处理( exception handling )的缩写。
xo/L%CmCB0elaborate (详细阐述)
51Testing软件测试网 D{Y$Y^E在 Ada 中,执行前的最后一步是通过插入必要的初始值和可执行指令来详细阐述代码,通常需要同一程序中其他编译单元的内容。参见可预阐述( preelaborable )。
7w.Q!_c4q:{x9y0elaboration (详细阐述)
51Testing软件测试网-@5l.x-A9W,R在 Ada 语言中,详细阐述是所需的详细阐述软件包的过程。
5o csll|j5lD F"o&[0ELF ( Executable and Linkable Format ,可执行和可链接格式)
O&yo/cO&q ?M U?0Linux 二进制目标文件格式,它包含动态加载库和可执行代码的信息。 ELF 由 COFF 格式演变而来,与 COFF 非常近似。 51Testing软件测试网-J*SB,oa0W N0YUG
elide (省略)
51Testing软件测试网${'F`"F5q6f(qo一个被省略的函数就是使用调用者返回位置作为工作空间(而非建立自己的内部工作空间)返回数值的函数,之后它会将返回值复制到返回地址中。优化器可以省略函数调用。 51Testing软件测试网wdc9[}:Kug
entry point (入口点)
51Testing软件测试网(_'c~ZD$Hd*c可执行程序中的地址,程序从这里开始执行并称为入口点。 51Testing软件测试网V-Nh}*@ D0V9z5\_
fetch (读取)
W:W9P]"^q9PG.p0当计算机由内存中的程序读取指令并加载到 CPU 执行时,这称为指令的读取。参见预取( prefetch )。 51Testing软件测试网)}N1BGz7mX x#y$QH
FPU ( Floating Point Unit ,浮点处理单元)
&HXeR&OC1B0同 CPU 一起工作处理浮点操作的硬件处理器。没有 FPU 的计算机将需要软件来仿真浮点操作。 51Testing软件测试网'}4~&RVl
folding (合拢)
#g'nZ4x |R0参见 COMDAT 。 51Testing软件测试网G3Vjn%t5p0SS3O
frame (栈)
51Testing软件测试网Z,u V"zZyS.f.T参见堆栈框架。
l,o{&g*J&oy0function (函数)
51Testing软件测试网z@%\nbzN函数是一块可执行代码,它被赋予一个名字并可以在其他位置调用。一个函数也可以被定义为带有参数,它指定一列由调用者传递的参数值。参见成员函数和方法。
g;Xw%dq(@0garbage collection (无用信息收集)
}1y.h!V(~"g&oU'k+q?0一个运行的程序的过程,它可以自动恢复动态分配但不再使用的内存。实现该过程有许多机制,但所有这些均可以被认为是无用信息收集。 51Testing软件测试网b7qUf7F!L[0g5t|
GCSE ( Global Common Subexpression Elimination ,全局公用子表达式去除)
51Testing软件测试网G,A EG#CT T一种优化技术,它可以识别重复的表达式并重用它的数值,而不是再次执行相应的计算。参见 CSE 。
;o"njk t#_0GNAT ( GNU Ada Translator , GNU Ada 翻译器)
51Testing软件测试网^v&DU1XTt原 Ada 前端的名字,现已成为 GCC 的一部分。 51Testing软件测试网5NP&[(vu}0NZ I&\0z
GNATS ( GNU Bug Tracking System , GNU 错误跟踪系统)
用来跟踪 GCC 和其他 GNU 软件错误的在线系统。 51Testing软件测试网y L\"L7Mi&{W51Testing软件测试网5ono|0wgP
GOT ( Global Offset Table ,全局偏移表) 51Testing软件测试网mae IgS3}
目标文件中包含一组偏移的表格,可用来重新定位可执行代码。参见 PIC 。 51Testing软件测试网2}!^+BWK2Kx
GPL ( General Public License ,通用公共许可证)
)h"q"J k}0aA#tS(KCAH0一种许可证,在其许可下软件被编写为 copyleft 格式的自由软件。
| w|;n4B0header (头文件)
6kV)L+R!B%ZS%UZ;l;Q5Y1d0由预处理程序执行 include 指示字并被包含在源文本文件中的文件。在 C , C++ 和 Objective C 中,传统上它是后缀为 .h 的文件。 51Testing软件测试网} @%Y||i7S
Hollerith field ( Hollerith 字段)
51Testing软件测试网;u.xe+^cRo] r*w4? q在 Fortran 中,引用的字串被保存为字符数,后面跟着的是字符本身。可以用 Hollerith 字段创建字符串,它是一个长度后跟一个 H 字母以及字符串(例如, 10HPhillips66 )。
~?XR/P6{^ \0host (主机)
aY9t'Q-b4y0参见平台。
'Yzr,_&_X+J6C0i18n
]*s(_4]&~,F0单词 internationalization 的简写形式,它由字母 i 开头,后跟 18 个字符,最后是字母 n 。参见 l10n 。 51Testing软件测试网5@|C,z#\1[ b p/g
if-conversion ( if- 转换)
51Testing软件测试网O:jiw i7r%?_一种优化过程,它会修改已生成的代码,以便分支之后的最可能被采用的路径比不可能采用的路径更有效。 51Testing软件测试网2D o`AUB;W:J
immediate (立即数)
51Testing软件测试网.oM7P\V+wN一个立即数值是一个常量,可以在汇编语言操作码中作为操作数使用。 51Testing软件测试网 b,KF1j#H8k3V l
include guard (包含文件防护)
W` C'_$n7v ])f2G8g0习惯上使用预处理程序条件编译命令来定义一个环境变量,它可以在头文件的最先部分进行检测,以防止头文件被再次编译。如果变量尚未定义,头文件就会被编译了。 51Testing软件测试网:jAq"oA4I
induction variable (归纳变量)
51Testing软件测试网;I3FE@T2b%^gO一种在循环体内递增的变量。循环计数器。 51Testing软件测试网:S5z"{*Z3B2z(ru
inline (内联)
7M*WI(X+a V0一个函数的实体(或其他相似的语言成分)被包含在函数的调用点。就是说函数体将在代码中内嵌展开,而不是只作为对另一处函数体的一次调用。 51Testing软件测试网}d6gTq5Oy {
insn
sw4X%@XJ.A6E9LLG0一种机器语言或 RTL 中间语言指令。该语言具有许多特殊用途的 insn ,但最重要的一些构成了一种元汇编语言,可被翻译为目标机器上的汇编语言指令。
g,Vm&N5oV0instantiation (实例化)
l+W~w2k0由类定义创建对象实例。
M%yC5{ n0intrinsic (特质)
l0GhPE3f)a.D W0在 Fortran 中,特质函数是一种内嵌函数,由于它可以不声明而直接使用,因此被视为语言的一部分。
E+{j3ENIN8|0invariant expression (不变表达式)
-YAs"B,V3KN0循环体内的表达式,每次循环时所计算的数值是不变量,在优化时可以转移到循环外。