计算机应用 | 古代文学 | 市场营销 | 生命科学 | 交通物流 | 财务管理 | 历史学 | 毕业 | 哲学 | 政治 | 财税 | 经济 | 金融 | 审计 | 法学 | 护理学 | 国际经济与贸易
计算机软件 | 新闻传播 | 电子商务 | 土木工程 | 临床医学 | 旅游管理 | 建筑学 | 文学 | 化学 | 数学 | 物理 | 地理 | 理工 | 生命 | 文化 | 企业管理 | 电子信息工程
计算机网络 | 语言文学 | 信息安全 | 工程力学 | 工商管理 | 经济管理 | 计算机 | 机电 | 材料 | 医学 | 药学 | 会计 | 硕士 | 法律 | MBA
现当代文学 | 英美文学 | 通讯工程 | 网络工程 | 行政管理 | 公共管理 | 自动化 | 艺术 | 音乐 | 舞蹈 | 美术 | 本科 | 教育 | 英语 |

利用汇编语言实现DES加密算法(2)

2016-06-01 01:11
导读:;功能:将入口寄存器的数据按置换表换位。 IP:MOVC,06H;将m58送到进位标志中 MOV7FH,C;将进位标志送m1中 MOVC,0EH;将m50送到进位标志中 MOV7EH,C;将进


;功能:将入口寄存器的数据按置换表换位。

IP:MOVC,06H;将m58送到进位标志中

MOV7FH,C;将进位标志送m1中

MOVC,0EH;将m50送到进位标志中

MOV7EH,C;将进位标志送m2中

;重复,按表编写

.


.

.

MOVC,31H;将m15送到进位标志中

MOV41H,C;将进位标志送m63中

MOVC,39H;将m7送到进位标志中

MOV40H,C;将进位标志送m64中

RET

(2)逆置换子程序

;入口寄存器:(MSB)2726252423222120(LSB),出口寄存器:(MSB)2F2E2D2C2B2A2928(LSB)

;功能:将入口寄存器的数据按逆置换表换位。

IPRVS:MOVC,18H;将m40送到进位标志中

MOV7FH,C;将进位标志送m1中

MOVC,38H

.

.

.

RET

(3)异或子程序

;入口寄存器:272625243F3E3D3C,出口寄存器:2B2A2928

;功能:将寄存器27262524的和寄存器3F3E3D3C的内容异或。结果保存在2B2A2928寄存器中。

XORLF:MOVA,3FH;将高8位异或

XRLA,27H

MOV2BH,A;放入出口处

MOVA,3EH

XRLA,26H

MOV2AH,A

MOVA,3DH

XRLA,25H

MOV29H,A

MOVA,3CH

XRLA,24H

MOV28H,A

RET

(4)S盒子程序

;入口寄存器:(MSB)2F2E2D2C2B2A2928,出口寄存器:(MSB)27262524

;功能:48位→32位

S6TO4:MOV20h,2FH;取出高位数据

LCALLS162345;调用实现Si(b1b6,b2b3b4b5)

;的功能子程序

MOVDPTR,#S1TAB;S盒表的首址

MOVA,21H;取出第几个S盒

LCALLDPTRADD

CLRA

MOVCA,@A DPTR;求出S盒的表地址及S结果

SWAPA

MOV27H,A;保存高位结果

MOV20H,2EH

LCALLS162345

;重复

RET

利用这些子程序,我们成功地开发了以89C52为核心单片机的密钥键盘,可用于系统的用户远程密码修改,也可用于其它商用密文的传输。 (科教作文网http://zw.ΝsΕAc.com发布)
上一篇:当前中国财政政策分析和调整取向 下一篇:没有了