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

为什么汇编编译时没错

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

阅读全文

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

热点内容
数据库查询系统源码 浏览:617
php5314 浏览:358
完美国际安装到哪个文件夹 浏览:669
什么app可以扫一扫做题 浏览:540
程序员编码论坛 浏览:924
淘点是什么app 浏览:660
中国高等植物pdf 浏览:454
51单片机时间 浏览:182
后台如何获取服务器ip 浏览:267
单片机流水灯程序c语言 浏览:236
程序员第二职业挣钱 浏览:240
运行里怎么输入服务器路径 浏览:843
pythonstepwise 浏览:512
刘一男词汇速记指南pdf 浏览:66
php认证级别 浏览:371
方舟编译啥时候推送 浏览:1012
php手机验证码生成 浏览:677
哲学思维pdf 浏览:17
凌达压缩机有限公司招聘 浏览:535
weblogic命令部署 浏览:39