麻烦大神用汇编语言编一下这题---------------------从外部数据存储器的3200H
答案:3 悬赏:10 手机版
解决时间 2021-01-15 15:16
- 提问者网友:轻浮
- 2021-01-14 22:10
麻烦大神用汇编语言编一下这题---------------------从外部数据存储器的3200H
最佳答案
- 五星知识达人网友:旧脸谱
- 2021-01-14 22:32
如下即可:
MOV DPTR, #3200H
MOV R2, #70
MOV R3, #0
LOOP:
MOVX A, @DPTR
SWAP A
ANL A, #0FH
MOV B, A
MOVX A, @DPTR
ANL A, #0FH
CJNE A, B, NEXT
INC R3
NEXT:
DJNZ R2, LOOP
MOV DPTR, #1600H
MOV A, R3
MOVX @DPTR, A
END
MOV DPTR, #3200H
MOV R2, #70
MOV R3, #0
LOOP:
MOVX A, @DPTR
SWAP A
ANL A, #0FH
MOV B, A
MOVX A, @DPTR
ANL A, #0FH
CJNE A, B, NEXT
INC R3
NEXT:
DJNZ R2, LOOP
MOV DPTR, #1600H
MOV A, R3
MOVX @DPTR, A
END
全部回答
- 1楼网友:青灯有味
- 2021-01-14 22:58
有的指令不会,
- 2楼网友:鱼芗
- 2021-01-14 22:49
HEXASC: ;;16进制转ascii,若是不想转换,只存回原码
;;只要
;; swap a
;; orl a,r6 这样就是如33 77了
ANL A,#0FH
ADD A,#90H
DA A
ADDC A,#40H
DA A
RET
begin: ;;程序从这里开始
MOV DPTR,#3200H ;;资料来源地址
MOV P2,#16H ;;资料储存地址,高8位元
MOV R0,#0 ;;资料储存地址,低8位元
MOV R7,#70 ;;资料总长度
LOOP1:
MOVX A,@DPTR ;;读出来源地址资料
ANL A,#0FH ;;去除高4位元
MOV R6,A ;;保存低4位元资料在R6
MOVX A,@DPTR
INC DPTR ;;来源地址加1
SWAP A ;;高低4位元对调
ANL A,#0FH ;;保存高4位元在A
XRL A,R6 ;;比较A R6是否相等
JNZ NOT_EQU ;;不相等离开
MOV A,R6 ;;资料上4位与下4位相等
ACALL HEXASC ;;资料转换成ASCII码
MOVX @R0,A ;;将资料存放在指定位置
INC R0 ;;储存地址加1
NOT_EQU:
DJNZ R7,LOOP1
RET ;;总相同笔数在R0内
好久没写汇编语言了,为了你,重操旧业,一定要采纳!!
;;只要
;; swap a
;; orl a,r6 这样就是如33 77了
ANL A,#0FH
ADD A,#90H
DA A
ADDC A,#40H
DA A
RET
begin: ;;程序从这里开始
MOV DPTR,#3200H ;;资料来源地址
MOV P2,#16H ;;资料储存地址,高8位元
MOV R0,#0 ;;资料储存地址,低8位元
MOV R7,#70 ;;资料总长度
LOOP1:
MOVX A,@DPTR ;;读出来源地址资料
ANL A,#0FH ;;去除高4位元
MOV R6,A ;;保存低4位元资料在R6
MOVX A,@DPTR
INC DPTR ;;来源地址加1
SWAP A ;;高低4位元对调
ANL A,#0FH ;;保存高4位元在A
XRL A,R6 ;;比较A R6是否相等
JNZ NOT_EQU ;;不相等离开
MOV A,R6 ;;资料上4位与下4位相等
ACALL HEXASC ;;资料转换成ASCII码
MOVX @R0,A ;;将资料存放在指定位置
INC R0 ;;储存地址加1
NOT_EQU:
DJNZ R7,LOOP1
RET ;;总相同笔数在R0内
好久没写汇编语言了,为了你,重操旧业,一定要采纳!!
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯