找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 5435|回复: 3
打印 上一主题 下一主题
收起左侧

[求助]高手救命啊帮我做几道题!

[复制链接]
跳转到指定楼层
楼主
ID:20884 发表于 2010-1-8 12:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

请各位单片机高手帮我做几道题,急啊!星期一就要教了。没交就要死了。

 

 

一,下列指令是否正确

1.MOVX  B . 03H       2.MOV  R3.@R     3.MOV (20H).(30H)   4.CLR  20H   5.CPL  20H   6.RL  R0

7.XRL   A ,@R3

 

二,将存放(连续存放)在内部RAM  20H单元开始的20个字节数据按升序排序。

 

三。如上题意(二)一样但改为降序排序

 

四。讲外部RAM  40H~60H单元中的数据传送到内部RAM的同地址区域,将原数据全部清零。

 

 

就这么多。高手麻烦帮忙给个答案,谢谢,感激!

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:23167 发表于 2010-4-18 16:41 | 只看该作者
先声明我是菜鸟!  1. 用MOVX指令需要把数据送到A中 2.间接寻址的R是什么啊?3.把括号去了,员操作数和目的操作数时间是逗号!4.把数据线送到A在用CPL   后面的好像是8086里的吧!
回复

使用道具 举报

板凳
ID:25197 发表于 2010-7-22 17:26 | 只看该作者

我会做第四个,

          org 0000h

          ajmp main

          org 0030h

 main:  MOV R0,#40H;记录片内的地址

           MOV R3,#20H;记录要传送的数据个数

           MOV DPTR,#0040H;记录片外地址

 LOOP: MOVX A,@DPTR;开始传送

           MOV @R0,A

           MOV A,#00H;开始清0源数据

           MOV @DPTR,A

           INC R0

           INC DPTR

           DJNZ R3,LOOP;检查是否传送完

OVER: AJMP OVER;   踏步指令

   我是学生,所以写的太死板了,请见谅

   第二个稍微麻烦一点,改天替你解决啊,呵呵

         

回复

使用道具 举报

地板
ID:25197 发表于 2010-7-22 21:13 | 只看该作者

         org 0000h
         ajmp main
         org 0030h
 main: mov r3,#19d;记录循环次数
 start: mov r5,r3;设置比较次数
        mov r2,#20h;设置起始地址
 goon: mov a,@r2;a中放要比较的底地址数
       inc r2
       mov r0,@r2;r0中放要比较的高地址
  cjnz: a,r0,loop;两数如果相等,跳到接着比较
        ajmp next
  loop: jc next ;r0大于a(即低地址放的是较小数,高低址放的是较大数,跳入记着比较)
        xch a,r0
        mov @r2,r0
        dec r2
        mov @r2,a
        inc r2
   next:djnz r5,goon;检查是否比较完了
         djnz r3,start;检查是否完成可升学排列
   over: ajmp over

其基本思想是冒泡法,先是挨个比较,比较一遍后就不最大的数放在了最高地址,然后再循环比较n-1(既第二次是比较19-1=18次)次,直到结束
         
      

回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表