微机原理课件第04章.pptVIP

  • 1
  • 0
  • 约7.53千字
  • 约 88页
  • 2020-01-19 发布于湖北
  • 举报
李宝平 计算机学院通信工程系 ;汇编语言程序设计;汇编程序(翻译程序);●;●;4.1.2 汇编语言源程序格式 ;0000:0~3;一个基本的汇编语言程序框架如下: ‘‘ 100 (‘’) 数据、变量在此定义 , , , : , , , 此处加入你自己的程序段 , 4 21H ;;;汇编语言的一个实例: (例022) ‘’ 100 (0) ‘, !’,0,0,’$’ : ;取字符串首地址 ,9 21H ;显示字符串 ,4 21H ;退回 ;●;操作码可以是指令、伪指令或宏指令的助记符。对于指令,汇编程序将其翻译成机器语言指令。 对于伪操作,汇编程序根据其功能进行处理。对于宏指令,则将根据其定义展开,转换成对应的代码。; ; 变量——即内存中的存储单元或数据区。 变量名——是存储单元(数据区)的符号地址 或 名字。 变量也有三个属性: 段地址—变量所在段的段地址 偏移量—变量单元地址与段首地址之间的位移量。 类 型—有、 、三种之一。 变量在程序中作为存储器操作数被引用。;4.表达式;用于数字表达式, 例: ,4*1024 汇编后的形式为: ,4096 用于地址表达式, 例: 3 若的偏移地址为1000H,则汇编后的形式为: ,[1003H] ;逻辑运算符只能用于数字表达式中。 例: ,36H 0 经汇编后: ,06H 注意: 不要把逻辑运算符与逻辑运算指令混淆: 例: , 30H 000H 汇编后源操作数被翻译为:3F00H,所以上述指令与 , 3F00H等价。;关系运算的结果是一个逻辑值:真或假 关系为真,结果为全1 关系为假,结果为全0 例: , 300H 若的值大于300H为真,则汇编后为: , 0 若为假,则汇编后为: , 0;取地址运算符——、 : 取变量/标号的段地址 :取变量/标号的偏移地址 例: 12H …… , ;取变量的偏移地址 , ;取变量的段地址 注意: 下面两条指令的异同: , , 只能取静态的偏移地址; 指令即可取静态的偏移地址,也可取动态的偏移地址。 ; 取变量的类型(1,2,4) 取所定义变量的长度 (即变量中元素的个数) 取所定义存储区的字节数 ( * ) 例: 1,2,3,4,5 则 = 2 = 5 = 10;5)属性操作符;例: [],0 ;字节类型 [],0 ;字类型 [],0B5H ;类型不定 也可用来进行强制类型转换 例:1 ? 1定义为字类型 1 ;合法 1 ;非法 ? 1 ;合法;: 用来修饰指令中转向地址的属性,指出转向地址是在下一条指令地址的-128127个字节范围之内。 : 格式为: 或 它可以象一样建立一个指定类型(、或)的或指定距离(或)的地址操作数。该操作数的段地址和偏移地址与下一个存储单元地址相同。 例如:

文档评论(0)

1亿VIP精品文档

相关文档