c51汇编语言书,51单片机汇编语言的指令格式

一个简单的循环灯实例

下图中的8个发光二极管代表 8 个彩灯,让我们看看是如何实现的

20150330020122167.jpg

STAT: MOV A , #01H ; 高电平对应的发光二极管亮

LOOP: MOV P1, A ; 从 P1 口输出到发光二极管

MOV R1, #10

DEL1: MOV R2 , #200

DEL2: MOV R3, #126

DEL3: DJNZ R3, DEL3

DJNZ R2, DEL2

DJNZ R1, DEL1

RL A

LJMP LOOP ; 左移一位 , 下一个发光二极管亮

END

汇编语言指令格式

[ 标号 ] : 操作码 [ 目的操作数 ] [ 源操作数 ] ; [ 注释 ]

↓     ↓    ↓       ↓       ↓

LOOP :   MOVX    A ,    @DPTR ;   将外部 RAM 单元内容送到 A

标号: 又称为指令地址符号。对标号有如下规定:

一般由 1 ~ 8 个 ASCII 字符组成,以字母开头,其余字符可以是字母、数字和其他特定字符。

不能使用助记符、伪指令或者寄存器的符号名称做标号。

与操作码之间用冒号分开,带方括号表示为可选项。

一个标号只能在程序中出现一次,不能重复出现。

操作码 是由助记符表示的字符串,它规定了指令要完成的具体操作。

操作数 指令操作的对象 . 操作数分为目的操作数(上例累加器 A) 和源操作数(上例中的 @DPTR). 目的操作数和源操作数的书写顺序不能颠倒 .

注 释 对指令功能的说明,以便于阅读,符号“;”后面的内容为注释。

汇编指令及其注释中常用的符号

Rn ------选中当前的工作寄存器区中的寄存器R0~R7之一

@ Ri------选中当前的工作寄存器组中的寄存器R0或R1,间接寻址前缀符号direct------直接地址,一个内部RAM单元地址或SFR地址.

#data ------------8位或16位常数,也称立即数. #为立即数前缀标志符号

addr11------------11位目的地址

addr16------------16位目的地址

rel ---------------8位地址偏移量,值在-128~+127范围内

bit---------------位地址.SFR的位地址(可用符号或名称表示)

/-----------------位操作前缀,表示该位内容求反

(×)------------表示以×为地址单元中内容

((×))--------表示以×为地址单元中内容为地址的单元中的

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值