80x86汇编语言的问题

80x86汇编语言的问题,第1张

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汇编语言的问题、高分求汇编语言两个程序合并成一个,一个是另一个的子程序、汇编语言程序设计中使用哪种软件工具等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9970101.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-03
下一篇 2023-05-03

发表评论

登录后才能评论

评论列表(0条)

保存