`
totoxian
  • 浏览: 1074452 次
  • 性别: Icon_minigender_2
  • 来自: 西安
文章分类
社区版块
存档分类
最新评论

汇编中一个有趣的问题

阅读更多

intmain(){
inta=1;
intb=2;
intc=-1;
}

问题是下面哪个关系成立:

&a>&b>&c还是&a<&b<&c?

我们知道局部变量是存放在栈中的,a先PUSH,然后是b,最后是c。

而栈指针SP是从高地址→低地址方向移动的,所以&a>&b>&c。

如果void f(int a ,int b, int c){

int a1;

int b1;

int c1;

return;

}
这里就是&a<&b<&c,因为参数是逆序进栈的。

网上有关"回车"和"换行"的一个有趣说法

"回车"(carriage return)和"换行"(line feed)这两个概念的来历和区别:

在计算机还没有出现之前,有一种叫做电传打字机(Teletype Model 33)的玩意,每秒钟可以打10个字符。但是它有一个问题,就是打完一行换行的时候,要用去0.2秒,正好可以打两个字符。要是在这0.2秒里面,又有新的字符传过来,那么这个字符将丢失。

于是,研制人员想了个办法解决这个问题,就是在每行后面加两个表示结束的字符:

一个叫做“回车”,告诉打字机把打印头定位在左边界;

另一个叫做“换行”,告诉打字机把纸向下移一行。

这就是“换行”和“回车”的来历,从它们的英语名字上也可以看出一二。

后来,计算机发明了,这两个概念也就被般到了计算机上。那时,存储器很贵,一些科学家认为在每行结尾加两个字符太浪费了,加一个就可以。于是,就出现了分歧。

Unix系统里,每行结尾只有“<换行>”,即“\n”;

Windows系统里面,每行结尾是“<换行><回车>”,即“\n\r”;

Mac系统里,每行结尾是“<回车>”。

一个直接后果是,Unix/Mac系统下的文件在Windows里打开的话,所有文字会变成一行;而Windows里的文件在Unix/Mac下打开的话,在每行的结尾可能会多出一个^M符号。

分享到:
评论

相关推荐

    汇编几个小程序 很有趣

    在汇编过程中,汇编器会将源代码转换为机器码,并生成一个目标文件。然后,链接器(Linker)将这个目标文件与其他库或模块连接,形成最终的可执行文件。在这个例子中,"wordtest.EXE"可能是一个简单的程序,用于演示...

    用汇编语言实现汉诺塔问题

    汇编语言中用递归算法实现汉诺塔问题。有X,Y,Z三个柱子和几个大小都不一样且能套进...(1) 每次只允许移动柱子最上面的一个圆盘。 (2) 任何圆盘都不得放在比它小的圆盘之上 (3) 圆盘只能在X,Y,Z三个柱子上放置

    汇编解决八皇后问题

    作业代码,汇编写八皇后问题,自己写了一份,在网上找的也在里面

    如何用keil在C中嵌入汇编

    "如何用keil在C中嵌入汇编" .keil是一款功能强大的集成开发环境(IDE),它支持多种编程语言,包括C语言和汇编...keil提供了一个功能强大的解决方案,可以轻松地将汇编语言嵌入到C语言中,从而发挥出汇编语言的优势。

    在c中嵌入汇编语言报错(问题解决)

    本文将详细介绍一个具体的案例,即在C语言中嵌入汇编语句时出现的错误,并给出了解决方案。 #### 问题描述 在本例中,开发者使用的是CCS(Code Composer Studio)环境下的C541 Device Simulator进行编程。目标是...

    汇编语言求平方根的问题

    在汇编语言中,可以设置一个初始猜测值,然后根据公式 `(x + y / (2 * x))` 更新猜测值,其中 `y` 是输入的数,`x` 是当前的猜测值。重复这个过程,直到猜测值的变化足够小,就得到了平方根的近似值。 二分查找法则...

    ASM 汇编语言学习问题

    汇编语言学习问题解决办法 有常见的学习汇编遇到的问题解答,是个不出的文档

    汇编语言问题以及文档

    9. **汇编和链接**:汇编过程将源代码转换为机器码,链接过程将多个汇编模块合并成一个可执行文件,解决外部引用。 10. **CHM文件**:Asm.chm是一个帮助文件,通常包含汇编语言的教程、参考手册和示例。CHM是...

    汇编语言程序设计-成绩统计问题

    汇编语言程序设计一个比赛(10人参赛,7位评委)成绩计算器,完成以下功能: 1.屏幕提示输入参赛人员姓名,以及7个评委的打分(百分制)。输入以逗号间隔;若输入非法,通过显示输出进行提示。 2.对7名评委的打分,...

    汇编语言27个经典案例

    实践是学习汇编语言的关键,每个案例都是一个宝贵的实践经验,通过亲手编写和运行代码,可以深化对计算机底层工作原理的理解。因此,这个压缩包对于那些想要踏入汇编语言世界的人来说,无疑是一份宝贵的学习资料。

    汇编语言字符串匹配问题

    "汇编语言字符串匹配问题"这个主题涉及到的是如何在汇编程序中实现对两个字符串进行比较,判断它们是否相等或者一个字符串是否为另一个的子串。 字符串匹配算法是计算机科学中的一个基础概念,广泛应用于文本处理、...

    Win32汇编下载汇编汇编汇编汇编汇编

    总的来说,这个资源包为32位汇编语言编程的学习提供了一个全面的起点,涵盖了理论知识、实践案例和额外的学习资源。通过系统学习,读者不仅可以掌握汇编语言的基本语法和操作,还能深入理解Windows系统的底层机制,...

    汇编语言编写的约瑟夫环问题(猴子选美)

    汇编语言编写的猴子选美,及约瑟夫环,有一定注释~

    反汇编软件 将一个软件反汇编,生成汇编代码

    总的来说,反汇编软件是IT领域中的一个重要工具,它帮助我们洞察程序的底层运作,对于软件开发、安全分析和系统理解都有极大的价值。通过学习和使用反汇编技术,开发者和研究人员可以更深入地理解计算机的工作原理,...

    汇编语言十个实验实验报告

    汇编语言是计算机科学中的一个重要领域,它是一种低级编程语言,与机器语言密切相关,但比机器语言更易读、易写。汇编语言实验旨在帮助学生理解和掌握计算机硬件与软件之间的交互,以及如何通过指令来控制计算机执行...

    汇编语言 20个练习题目 代码加实验报告

    5.7 试编制一个汇编语言程序,求出首地址为DATA的100D字数组中的最小偶数,并把它放在AX中。 5.8 把AX中存放的16位二进制数K看作是8个二进制的“四分之一字节”。试编写一个程序,要求数一下值为3(即11B)的四分之...

    中文汇编NAJC演示版

    总的来说,中文汇编NAJC是一个创新的尝试,它试图解决编程语言中的语言鸿沟问题,为中文开发者提供了一种新的工具,使他们在操作系统开发和其他底层编程任务中能更加得心应手。随着NAJC的进一步发展和完善,我们可以...

    汇编语言设计masm

    在《汇编语言设计MASM》的学习中,我们将涉及以下几个核心知识点: 1. **基本概念**:了解汇编语言的基本元素,包括指令、寄存器、操作数和寻址模式。MASM支持Intel x86架构,因此会涉及到8086、80386等处理器的...

    易语言汇编中文指令模块源码

    本模块是以汇编指令机器码字节集作为常量值,常量名是中文,从常量名就可知道,这条指令是要做什么,非常适合...有哪位大侠,能解决这个问题,就非常感谢.也让哪些汇编爱好者,也有学习汇编的机会.@情雅。Tags:汇编中文指令。

Global site tag (gtag.js) - Google Analytics