请问以下我编译的汇编语言程序代码可以成功执行吗?

[复制链接]
查看11 | 回复5 | 2010-12-23 20:47:58 | 显示全部楼层 |阅读模式
课本代码LED户外广告程序范例:

.AREA
HOME(ABS,CODE)

.ORG
0x0000
Start:
MOV
DPTR,#Table
Loop: CLR
A

MOVC
A,@A+DPTR

CJNE
A,#0x55,Loop1

AJMP
Start
Loop1:MOV
P1,A

MOV
R6,#0X00
Delay: MOV
R7,#0x00

DJNZ
R7,$

DJNZ
R6,Delay

INC
DPTR

AJMP
Loop
Table: .DB 0x81,0x80,0x79,0x78,0x77,0x76,0x75,0x74,0x73,0x72,0x71,0x70,0x69,

.DB 0x68,0x67,0x66,0x65,0x64,0x63,0x62,0x61,0x60,0x59,0x58,……0x46

.DB 0x55
我设计的:

.AREA
HOME(ABS,CODE)

.ORG
0x0000
Start:
MOV
R0,#00001011B
Loop: INC
R0

CJNE
R0,#0x55

MOV
A,R0

MOVC
A,@A+PC

MOV
P1,A

MOV
R6,#0X00
Delay:MOV
R7,#0x00

DJNZ
R7,$

DJNZ
R6,Delay

AJMP
Loop

0x81

0x80

……

0x46

0x55
跳转是Start。

回复

使用道具 举报

千问 | 2010-12-23 20:47:58 | 显示全部楼层
你设计的汇编语言程序代码上看是没有什么问题,编译器在编译时也是可以通过的,但是能够是否成功执行要视你所要求的执行效果而言,所谓“成功执行”是指程序代码能够被编译器成功编译,且在执行程序时能够正确完成用户所须要的执行效果。因此你的程序代码从编译角度上看只能说是可以通过编译的,但执行时所执行的效果是否是你所要的效果,那只能是你自己在观察代码执行后的效果并与自己所需要的执行效果相比较才能确定代码的执行是否成功。这里提个别建意,1、程序代码编写完后要注意检查,最好还是边编写边检查,因为如果代码如果一长的话,要想代码编完后再检查错误的话,那是相当难的。2、要注意自己的编译器是否允许部分操作数的缺省以及编译器对缺省操作数是如何处理的。如果编译器不允许有
回复

使用道具 举报

千问 | 2010-12-23 20:47:58 | 显示全部楼层
可以,VC调试程序时,选择一个断点,然后用ALT+F8组合键,或者从菜单选择VIEW(查看)-DEBUG WINDOW(调试窗口)-DISASSEMBLY(汇编),就可以看到每个函数的汇编代码了。
回复

使用道具 举报

千问 | 2010-12-23 20:47:58 | 显示全部楼层
可以,VC调试程序时,选择一个断点,然后用ALT+F8组合键,或者从菜单选择VIEW(查看)-DEBUG WINDOW(调试窗口)-DISASSEMBLY(汇编),就可以看到每个函数的汇编代码了。
回复

使用道具 举报

千问 | 2010-12-23 20:47:58 | 显示全部楼层
阿文结婚的施工规范的设计符合计划
回复

使用道具 举报

千问 | 2010-12-23 20:47:58 | 显示全部楼层
CJNE R0,#0X55,.... 少了个跳转
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行