我想请问微机原理用的汇编为什么和单片机用的汇编不一样呢?谢谢!不是一套指令集,自然汇编指令就不一样了。1.总线周期与CPU的主频有关,不一定了。。
微机原理,汇编 DATA SEGMENTX DB 15Y DB 34Z DW?DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXMOV AL,XMUL ALMOV BX,AXMOV AL,YMUL ALADD AX,BXSHR AX,1MOV Z,AXMOV AH,4CHINT 21HCODE ENDSEND START
微机原理刚学汇编 写汇编程序时毫无头绪 比如不知道怎么样开头 像c语言之类的都有固定头文件啥的 汇 建议如下:工欲善其事,2113必先利其器5261,软件先安好。现在学4102习的汇编一般都是165316位的,而PC一般都是是x86或者x64,16位的程序是没法直接运行的,所以需要安装虚拟的运行环境,推荐使用DOSBox,用来运行你编写的汇编代码编译后生成的16位exe的程序。当然代码编辑器的话,推荐用Notepad+。顺便说一下,DOSBox安装之后还需要一些配置,还要添加masm.exe,link.exe等程序,配置难度适中,如果不会配置,请给我发私信(因为联系方式此处不便透露)。汇编代码其实不难,关键是入门时,也要遵循一定的语法,这里是一个hello world的例子(运行是可以的,不用怀疑):data segmentstr_1 db 'hello world。','$';定义一个字符串,以$结束data endscode segmentmain proc farassume cs:code,ds:datastart:push dssub ax,ax;相当于 mov ax,0hpush axmov ax,datamov ds,axlea dx,str_1mov ah,9hint 21hretmain endpcode endsend start对于这段代码,没有堆栈段(因为用不上),编译会警告没有堆栈段,但是不影响。这段代码算是一个典型的汇编代码的例子了吧,汇编代码的结构差不多就这样,多是先要有数据段,代码段等的定义,然后是assume将数据段与ds,。