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

为什么汇编编译时没错

发布时间: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#语言等先要转成一个中间语言,再翻译成汇编码,这个就更差了。

阅读全文

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

热点内容
柯洁在哪个app下围棋 浏览:751
平板用什么app看内在美 浏览:609
cad计算机命令 浏览:173
邮箱设置域名服务器错误什么意思 浏览:671
硬盘解压失败受损蓝屏 浏览:654
应用和服务器是什么意思 浏览:485
程序员需要知道的网站 浏览:713
微信支付页面加密码怎么加 浏览:57
网络加密狗问题 浏览:698
cnc曲面编程实例 浏览:170
什么app零粉分发视频有收益 浏览:164
肯尼亚程序员 浏览:640
新科源码 浏览:661
如何判断服务器有没有带宽 浏览:44
天正建筑批量删除命令 浏览:96
cad最下面的一排命令都什么意思 浏览:456
pythonimportcpp 浏览:852
W10的系统怎么给U盘加密 浏览:372
华为手机代码编程教学入门 浏览:764
和彩云没会员怎样解压 浏览:636