一、汇编语言中START和MAIN有区别么?
某些汇编语言中,START,是伪指令,有特定的含义。
MAIN,在 C 语言中有意义。在汇编语言中,就什么也不是。可以随意使用,当标号、当变量,都行。二、在汇编中?
意思:是一个预定义符号,等价于当前正汇编到的段的当前偏移值。
例如eg:指令“jmp$+3”中的“$”表示当前这条指令在代码段中的偏移量。
一、eg即“jmp$+3”表示要向前跳转到距离这条指令3个字节的地方。若是“jmp$-3”,则表示要向后跳转到距离这条指令3个字节的地方。
二、在汇编中是字符串结束的标志
如:DATA SEGMENT
MES1'HELLO',0AH,0DH,'$'
三、$同时也代表着美元
四、同时也是JQuery和PHP等框架或语言中所用的有特殊作用的符号。
扩展资料:
举例:汇编语言中$+4表示
$是指当前指令的地址
$+4就是当前指令+4的地址
举个$-4的例子,也一样。
DELAY:
MOV R3,#25
D1:
MOV R4,#20
D2:
DJNZ R4,D2
DJNZ R3,D1
RET
也可以写成:
DELAY:
MOV R3,#25
MOV R4,#20;MOV Rn,#data为2字节指令
DJNZ R4,$;DJNZ Rn,rel为2字节指令
DJNZ R3,$-4;$-4的地址向上-4个字节单元,指令就是MOV R4,#20
RET
参考资料:
三、汇编中inc指令?
N1难道不是数据段中的一个地址吗
--对。
为什么inc命令不是将N1点地址加一(就是说N1将指向下一字节的地址),程序的意思好像是将N1的内容加一
--的确,就是把内容加一。
--你看看:INC N1+1
--这是把 N1 下一字节的内容加一
能解释一下原理吗
--这是汇编语言的规则,没有原理。
-----------------------
C语言:
int i, j, k;
j = j + 1;
是雷同的。
四、汇编中mov sp?
首先你得了解特殊功能寄存器sp。在8086微机系统中,sp是堆栈指针,表明堆栈偏移地址。入栈操作后sp-2,出栈操作后sp+2。movsp,#60H的意思是设置堆栈的长度为60Hbyte。在该条指令前应该还需一条指令用于声明堆栈段地址。即movss,reg(reg泛指一般工作寄存器)
五、汇编中assume的作用?
编写汇编语言的程序,要用编译软件来编译。
assume,就是通知编译软件的,说明段寄存器和定义段的关系。
编译软件,比较弱智,你随便瞎写一个对应关系,它都辨别不出来真假。
程序正确与否,全靠 MOV...这种针对 CPU 的指令,和 ASSUME 基本无关。
就不用琢磨它了。
六、汇编中ax与a区别?
是不一样的。ax 与a虽然都是累加器。但ax是16位cpu中的累加器,占16位,两个字节,可分为高低字节两部分,即ah和al。a是单片机中的累加器,占8位,一字节,可以进位寻址。这两个寄存器在使用中功能有很大的区别,你仔细看看单片机中的寻址指令就应该差不多能区分出来。
七、$-STA,$-BUF汇编中的?
用$-STA代替某一个变量 。
$-STA你可以看成表示符号代码!
就像 宏定义。
SBIT
举个例子。
BUF DB, 'ABCDE'
COUNT EQU $-BUF 这个句子中$-BUF 中间的 - 是减号
EQU是一条等价伪指令 表示COUNT等价于$-BUF
表示定义完BUF DB, 'ABCDE' 之后的存储器单元地址减去变量 BUF的地址
$-BUF=5 也即COUNT=5
八、汇编中seg的作用?
变量的存储包括段地址和偏移地址。SEG就是取段地址的。比如:datasegmentore10hSTRINGdb'hello,world$'dataends假设data=1234h,则:movdi,segstring;di=string所在段地址,即1234hmovei,offsetstring;ei=string偏移地址,即10h
九、医学中start名词解释?
简明检伤分类法(START法)这是目前国际通用的一种快速、简单的检伤分类方法,START是取五个英文字首而成即简单地(Simple)分类(Triage)和(And)快速的(Rapid)治疗(Treatment)。
十、关于汇编中的LDS指令?
你这样想,这条指令格式是LDSreg,mem这条指令的功能是把mem指向的地址,高位存放在DS中,低位存放在reg中.下面说的是16位的.比如当前DS=1000H,BX=0100H.当前内存:1000:0100011000:0101021000:0102031000:010304而有一条指令:LDSBX,[BX][BX]指向1000:0100,执行后BX存低位的内容,也就是BX=0201H,而DS则存高位的内容,也就是[BX+2]的内容,DS=0403H这样你是不是就理解了为什么要加2,因为[BX+2]才能指向高位.想清楚了16位的,你也就想通了32位的 参考资料: 完全手打,不加分对不起我.
- 相关评论
- 我要评论
-