80x86汇编在实模式的 *** 作系统中,可以说是无所不能。当然,C语言也一样。但在windows2k/xp这样的系统中,由于用户程序只能运行在ring3级权限。所以在不借助驱动的前题下,也只能开发和普通高级语言类似的程序而以。只可能是执行效率上稍稍高一点了。
像宏指令有多少条我也不太清楚,你找本书自己看吧。
学习汇编,拿握CPU原理是基本功!指令的理解都是基于对CPU的认识。
其实,所谓的汇编语言,某种意义上讲,它也是高级语言。真正干活的是CPU里的微指令。呵呵!
还有BOIS,它不过是固化在一个ROM里的代码而以。它里面提供的函数是介于 *** 作系统和硬件之间的。就好像是DOS *** 作系统,如果没有BIOS里的函数支持,DOS不可能这么万能的。
BIOS和DOS是用什么写的,这我也不太清楚,但可以肯定,不管是用C也好,还是汇编也好。最终都是找一个好的编绎器,然后生成一堆二进制的代码而以。这和什么语言真的没有很大的关系!
方面的。
假设楼主规定的10位数,是在AX的低10位中。
80x86汇编语言程序如下:
start:
MOV
BX,
0
MOV
CX,
10
NEXT:
SHR
AX,
1
;AX右移一位,末位进入CF
JNB
NNNN
;CF为0转移
INC
BX
;CF为1则加一
NNNN:
LOOP
NEXT
;CX减一,非零转移
MOV
CX,
BX
;把统计个数,送到题目指定的寄存器
HLT
;停止
END
----------
经过百度Hi交流,题目中,实际上是16位数字,不是10位数。
那么把:MOV
CX,
10
中的10,改成16即可。
1、MASM。
微软公司为x86 微处理器家族开发的汇编开发环境,拥有可视化的开发界面,使开发人员不必再使用DOS环境进行汇编的开发,编译速度快,支持80x86汇编以及Win32Asm,是Windows下开发汇编的利器。
2、NASM。
全称The Netwide Assembler,是一款基于80x86和x86-64平台的汇编语言编译程序,其设计初衷是为了实现编译器程序跨平台和模块化的特性。
3、TASM。
Borland公司开发的汇编编译器,被广泛用于Turbo C,Quick Basic等编译器,用作中间过渡编译。它也能独立的编译纯汇编或是Win32Asm的代码。具有编译快速,高效的特点,至今依然是汇编开发的首选利器。
4、GAS。
GNU汇编器(GNU Assembler),简称为GAS,是由GNU计划所使用的汇编器,GNU的核心精神是自由与分享,所以GAS亦是自由软件。
5、RadASM。
一款著名的WIN32汇编编辑器,支持MASM、TASM等多种汇编编译器,Windows界面,支持语法高亮,自带一个资源编辑器和一个调试器。拥有较强的工程管理功能,加之众多插件的支持,使得它用汇编语言编写Windows软件变得得心应手。
参考资料来源:百度百科-汇编语言
以上就是关于80x86汇编语言的问题全部的内容,包括:80x86汇编语言的问题、高分求汇编语言两个程序合并成一个,一个是另一个的子程序、汇编语言程序设计中使用哪种软件工具等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)