导航:首页 > 源码编译 > 为什么汇编编译时没错

为什么汇编编译时没错

发布时间:2024-12-04 17:15:13

1. 汇编就连Hello World都没有输出结果

肯定两点:1.你的程序代码没有错误
2.RadASM、MASM、MASMPlus这些编译工具也没有错误
所以得出结论,错误在你。你对工具的用法不对。建议你到dos操作系统下去调试,用masm 5.0版。如果你没有,可以向我要。

2. C语言中函数的地址在编译时就分配好了,为什么不会产生地址冲突运行时刚好那个地址有别的程序在用

函数的具体武理地址不是编译的时候分配的,是运行的时候由系统分配的!如果你看一下生成的汇编代码你就会发现进入函数时的操作是将返回地址压栈后通过CALL跳转到函数开头处执行,压栈的函数地址都是偏移量,实际地址在运行时通过基址加减偏移量得出。另外通常程序的内存空间是专用的,两个程序的空间互不冲突,普通用户程序不可以访问其他程序的内存空间!

3. 我在KEIL用汇编写的,编译成功了,但是在子文件显示的是打叉的,为什么

#include<reg51.h> 类似这样的子文件的名字写错,编译软件内搜闭根本没有这个文件,所以打错号。世庆裂但是你的主程序是跑的通差高的,所以依然可以编译。

4. 为什么汇编语言编出来的程序要比高级语言编出来的执行效率高

这个没有一定的说法,取决于编译器的聪明程度。
一般的语言,如C语言是首先将C语言编译为汇编,然后汇编转为机器码。而用汇编的写则是直接由汇编到机器码。那么这两者的速度差异取决于编译器在编译的时候产生的汇编码是否比程序员手写的更为高效和快速了。
早期的时候编译器很差,产生的汇编码没有程序员手工写的高效,而现在编译器大大的聪明了,所以这两者的速度是很难讲的。
不过大部分情况下,编译器翻译的都要差,所以速度没有手工写的汇编码快。加上JAVA、c#语言等先要转成一个中间语言,再翻译成汇编码,这个就更差了。

阅读全文

与为什么汇编编译时没错相关的资料

热点内容
android仿ios时间选择器 浏览:379
见识pdf 浏览:82
男孩子慰菊手册pdf 浏览:532
注册表启动项命令 浏览:109
89c51单片机定时器 浏览:687
一般不适合做程序员的适合做啥 浏览:923
点在多边形内算法 浏览:494
程序员下班急忙回家 浏览:359
安庆php全套源码交友类型网站源码 浏览:92
浪潮服务器公司地址 浏览:733
密约聊天交友app怎么赚钱 浏览:280
滴滴java 浏览:109
phpexpires 浏览:218
matlab编程用什么语言 浏览:70
php查找字符是否存在 浏览:701
可编程函数发生器 浏览:881
单片机正极接地视频 浏览:67
利用python爬火车票 浏览:375
androidaidl如何工作 浏览:855
第三胸椎压缩骨折什么症状 浏览:506