文本片段的名称在哪里?

时间:2009-08-15 18:27:10

标签: history compiler-construction internals

传统汇编程序和更高级别的编译器根据预期用途使用多个内存。因此,存在数据段,堆栈段,bss和文本段。文本段也称为代码段。

文字细分?对于机器代码

我已经问过我能找到的所有老前辈,机器码无法读取的内容如何被称为“文本段”。他们每个人都同意这一点,这就是所谓的,但他们似乎都没有对它感到惊讶。没有人可以提供解释。

这是你通过启发我们来展示你的极客历史知识的机会。

7 个答案:

答案 0 :(得分:16)

对于nos的评论稍微进一步,我打开了GE-635 Programming Manual的扫描版本,并在宏汇编程序的部分中找到了以下内容:

  

GE-625/635宏汇编程序是   被提供给予   一些专业程序员   编译器的便利性和   汇编程序的灵活性。 [...]   输出选项使他能够获得   可重定位的二进制文本以及   绝对格式。

因此,似乎“二进制文本”的使用是GE口语,或者当时可能是一个常用的术语(请记住那些是读卡器/打卡器用于大量IO的日子)。因此,一条可能的途径是GE,通过GE-645的Multics,通过贝尔实验室的Multics工作到Unix的Unix。

答案 1 :(得分:3)

可能是因为程序代码,无论是难以阅读的机器指令,还是程序 text - 即包含指令的文本?就像你把微积分书称为教科书一样,虽然除非你熟悉代码的数学符号,否则很难解密。

答案 2 :(得分:2)

来自Wictionary

  1. 由多个字形,字符,符号或句子组成的书面段落。
  2. 一本书,一本书或其他一组着作。
  3. (口语)手机之间传送的简短书面信息;短信。
  4. (计算)可以解释为人类可读文本的数据(通常与二进制数据形成对比)。

  5. 我建议计算机术语的含义源自程序在程序运行之前写入的程序,而不是数据,读入,处理,然后写回。

答案 3 :(得分:1)

这可能与以下事实有关:代码部分通常是只读的,并且它还可以包含文本字符串,该字符串可以作为程序显示给用户的文本消息。因此,“文本”部分。这与“数据”部分包含的可以修改的数据相反。

答案 4 :(得分:0)

我建议意义引用汇编程序(在那种情况下是我们所说的)语言是文本,可读文本。因此,段.text可以被描述为编写代码程序(文本)的段和程序文本所在的段,但最后称为段.data。它也可以称为segment .code,因为它是程序代码所在的段。

在我看来应该只是调用:.code(它是文本,并且它在逻辑上与其他部分不同)。

答案 5 :(得分:0)

我一直想像它是与人类可读文本的类比。

您用英语写了一段文字。它是一串字母,标点符号等,并遵守该语言定义的某些规则(即句法,语法等)。 懂该语言的人可以理解它。

同样,您用机器语言编写(即构建)“文本”。它是一串二进制数据(数字),并且遵守该语言定义的某些规则(即指令集体系结构)。 知道该机器语言(即实现ISA)的处理器可以理解(即执行)。

IMO,术语“代码”不太合逻辑。 “代码”是指已经从其原始形式转换(编码)为某种替代表示形式(出于任何目的)的一条信息。但是,对于可执行文件“代码”,尚不清楚其原始格式是什么。

答案 6 :(得分:0)

名称段来自以前使用的内存管理技术,现在被paging取代。我相信名称文字来自与小说的类比。就像小说中的文本一样,代码也可以被视为小说中的一段文本。代码的文本部分讲述了代码,或者讲述了程序的故事。

我同意kdgregory的回答,但我认为binary text表示法来自于这一事实。