亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? des.a51

?? C51寫的DES算法,C51寫的DES算法,C51寫的DES算法,C51寫的DES算法
?? A51
?? 第 1 頁 / 共 2 頁
字號:
$IF __PHILIPS != 2

$IF __PHILIPS != 0
$include(regmf2.inc)
$ENDIF


		NAME	DES						; Name of the module


?PR?DES?DES		SEGMENT CODE			; Segment for prg code in 'des'
		PUBLIC	_DES_CORE				; Public symbols for 'C' function call

		RSEG	?PR?DES?DES				; Program segment

; Table data for DES
BITS			EQU		020H				; The start of the bit-addressing block
BITS_0			EQU		020H				; The first  bit-addressing block (8 bytes)
BITS_1			EQU		028H				; The second bit-addressing block (8 bytes)
BUF				EQU		BITS_0			; The input block of the SP-box and the output buffer
; youyang 20030625
$IF __EMOSYN != 3
BLOCK			EQU		03DH
$ELSE
BLOCK			EQU		03CH
$ENDIF
;BLOCK			EQU		045H
B_DES			EQU		02FH.0

; S-Boxes
S1BOX:	
  	DB 0EFH, 003H, 041H, 0FDH, 0D8H, 074H, 01EH, 047H
	DB 026H, 0EFH, 0FBH, 022H, 0B3H, 0D8H, 084H, 01EH
	DB 039H, 0ACH, 0A7H, 060H, 062H, 0C1H, 0CDH, 0BAH
	DB 05CH, 096H, 090H, 059H, 005H, 03BH, 07AH, 085H
	DB 040H, 0FDH, 01EH, 0C8H, 0E7H, 08AH, 08BH, 021H
	DB 0DAH, 043H, 064H, 09FH, 02DH, 014H, 0B1H, 072H
	DB 0F5H, 05BH, 0C8H, 0B6H, 09CH, 037H, 076H, 0ECH
	DB 039H, 0A0H, 0A3H, 005H, 052H, 06EH, 00FH, 0D9H

S3BOX:	
    DB 0A7H, 0DDH, 00DH, 078H, 09EH, 00BH, 0E3H, 095H
	DB 060H, 036H, 036H, 04FH, 0F9H, 060H, 05AH, 0A3H
	DB 011H, 024H, 0D2H, 087H, 0C8H, 052H, 075H, 0ECH
	DB 0BBH, 0C1H, 04CH, 0BAH, 024H, 0FEH, 08FH, 019H
	DB 0DAH, 013H, 066H, 0AFH, 049H, 0D0H, 090H, 006H
	DB 08CH, 06AH, 0FBH, 091H, 037H, 08DH, 00DH, 078H
	DB 0BFH, 049H, 011H, 0F4H, 023H, 0E5H, 0CEH, 03BH
	DB 055H, 0BCH, 0A2H, 057H, 0E8H, 022H, 074H, 0CEH

S5BOX:	
    DB 02CH, 0EAH, 0C1H, 0BFH, 04AH, 024H, 01FH, 0C2H
	DB 079H, 047H, 0A2H, 07CH, 0B6H, 0D9H, 068H, 015H
	DB 080H, 056H, 05DH, 001H, 033H, 0FDH, 0F4H, 0AEH
	DB 0DEH, 030H, 007H, 09BH, 0E5H, 083H, 09BH, 068H
	DB 049H, 0B4H, 02EH, 083H, 01FH, 0C2H, 0B5H, 07CH
	DB 0A2H, 019H, 0D8H, 0E5H, 07CH, 02FH, 083H, 0DAH
	DB 0F7H, 06BH, 090H, 0FEH, 0C4H, 001H, 05AH, 097H
	DB 061H, 0A6H, 03DH, 040H, 00BH, 058H, 0E6H, 03DH

S7BOX:	
    DB 04DH, 0D1H, 0B2H, 00FH, 028H, 0BDH, 0E4H, 078H
	DB 0F6H, 04AH, 00FH, 093H, 08BH, 017H, 0D1H, 0A4H
	DB 03AH, 0ECH, 0C9H, 035H, 093H, 056H, 07EH, 0CBH
	DB 055H, 020H, 0A0H, 0FEH, 06CH, 089H, 017H, 062H
	DB 017H, 062H, 04BH, 0B1H, 0B4H, 0DEH, 0D1H, 087H
	DB 0C9H, 014H, 03CH, 04AH, 07EH, 0A8H, 0E2H, 07DH
	DB 0A0H, 09FH, 0F6H, 05CH, 06AH, 009H, 08DH, 0F0H
	DB 00FH, 0E3H, 053H, 025H, 095H, 036H, 028H, 0CBH

SBOX			EQU		S1BOX

; Rotation count in key-generation
; Pls note here the count series is the reversal of the conventional ones
; Since when processing loop, it is relatively easier to count DOWN than
; count UP, thus we reverse the direction of the table
LROT:			DB		1, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 1, 1
RROT:			DB		1, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 1, 0
; End of DES_DATA segment

;The DES encryption/decryption subroutine segment

; This module do NOT save ANY registers' value, and it do NOT use any stacks.
; It is up to the caller to care about stacks and registers.
; Register as parameters:
;		ACC is extensively used
;		B is used as CARRY buffer (only B.0 is used)
;		R0, R1 are used as counter and indexer
;		R5.0 == 1  --> With    Initial Permutation
;		R5.0 == 0  --> Without Initial Permutation
;		R5.1 == 1  --> With    Final   Permutation
; 		R5.1 == 0  --> Without Final   Permutation
;		R7 == 0 --> Encryption
; 		R7 == 1 --> Decryption
; Now Begins the subroutine.
;-------------------------------------------------------
_DES_CORE:

; Step 0: Initialize the key block (from 64-bit raw key to 64-bit key vector
; by PC-1 permutation (64 bits -> 56 bits)
PC_1:
	;Step 0: Hard-coded bit-moving scheme, the key vector is currently
	; located at (BITS+8) - (BITS+14)
 	MOV	A,R7
	JNB	ACC.0,SDF
	MOV	A,R5
	SETB	ACC.7
	MOV	R5,A
SDF:
;*********************************************
	MOV	R7,#08H
	MOV	R0,#27H

STEP01:	
	MOV	R1,#28H
	MOV	A,@R0		;BIT7
	RLC	A
	XCH	A,@R1
	RLC	A
	XCH	A,@R1
	
	RLC	A                ;BIT6
	INC	R1
       	XCH	A,@R1
	RLC	A
	XCH	A,@R1
                                 ;BIT5
	RLC	A
	INC	R1
       	XCH	A,@R1
	RLC	A
	XCH	A,@R1
	
	DEC	R0
	DJNZ	R7,STEP01
;*********************************************	

	MOV C, 27H.4
	RLC	A
	MOV C, 26H.4
	RLC	A
	MOV C, 25H.4
	RLC	A
	MOV C, 24H.4
	RLC	A
	MOV 	2BH,A


	MOV C, 23H.1
	RLC	A
	MOV C, 22H.1
	RLC	A
	MOV C, 21H.1
	RLC	A
	MOV C, 20H.1
	RLC	A
	MOV	 2CH,A


	MOV C, 23H.2
	RLC	A
	MOV C, 22H.2
	RLC	A
	MOV C, 21H.2
	RLC	A
	MOV C, 20H.2
	RLC	A
	MOV	2DH,A

;*********************************************
	MOV	R7,#04H
	MOV	R0,#27h

STEP02:	
	MOV	R1,#2BH
	MOV	A,@R0		;BIT1
	RRC	A
	RRC	A
	XCH	A,@R1
	RLC	A
	XCH	A,@R1
	
	RRC	A                ;BIT2
	INC	R1
       	XCH	A,@R1
	RLC	A
	XCH	A,@R1
                                 ;BIT3
	RRC	A
	INC	R1
       	XCH	A,@R1
	RLC	A
	XCH	A,@R1
	
	DEC	R0
	DJNZ	R7,STEP02
;*********************************************	

	MOV C, 23H.3
	RLC	A
	MOV C, 22H.3
	RLC	A
	MOV C, 21H.3
	RLC	A
	MOV C, 20H.3
	RLC	A
	MOV C, 23H.4
	RLC	A
	MOV C, 22H.4
	RLC	A
	MOV C, 21H.4
	RLC	A
	MOV C, 20H.4
	RLC	A
	MOV 	2EH,A


	; Now the processed key block is in (BITS_1) - (BITS_1+6)
; Step 1: Initial permutation of the BLOCK (IP)
	MOV A, R5
	JB ACC.0, IPERM
	JMP STEP_2
IPERM:
;****************************************
	MOV	R7,#04H
	MOV	R0,#BLOCK+4
	MOV	R1,#BLOCK+0
STEP34:	
	MOV	A,@R0
	SWAP	A
	MOV	@R0,A
	XRL	A,@R1
	ANL	A,#0F0H
	XCH	A,@R1
	XRL	A,@R1
	XCH	A,@R1
	XRL	A,@R0
	SWAP	A
	MOV	@R0,A

	INC	R0
	INC	R1
	DJNZ	R7,STEP34
;**********************************************

	MOV	R7,#02H
	MOV	R0,#BLOCK+2
	MOV	R1,#BLOCK+0
	LCALL	STEP12	


	MOV	R7,#02H
	MOV	R0,#BLOCK+6
	MOV	R1,#BLOCK+4
	LCALL	STEP12

;**********************************************

	MOV	R7,#04H
	MOV	R0,#BLOCK+1
	MOV	R1,#BLOCK
STEP13:	
	MOV	A,@R0
	RL	A
	MOV	@R0,A

	XRL	A,@R1
	ANL	A,#0AAH
	XCH	A,@R1
	XRL	A,@R1
	XCH	A,@R1
	XRL	A,@R0
	RR	A
	MOV	@R0,A

	INC	R0
	INC	R0
	INC	R1
	INC	R1
	DJNZ	R7,STEP13
;**********************************************

;--------------------------------------------------------
	; Step 1.4:
	XCH	A,BLOCK
	XCH	A,BLOCK+3
	XCH	A,BLOCK+6
	MOV	BLOCK,A

	XCH	A,BLOCK+7
	XCH	A,BLOCK+4
	XCH	A,BLOCK+1
	MOV	BLOCK+7,A


				; Step 1.5: Done
;===========================================================
;1== ***********************************************************
;===========================================================
STEP_2:
				; Step 2: The 16-run block processing
				; To maximize the speed, we un-roll the loop 
				; by factor 2 (16 round -> 8 round)
	MOV R1, #16 			; Initialize the count
LOOP_1:
				; The first part of the un-rolled loop
				; Step 2.1: Rotate the key vector
 
        CLR  B_DES
LH_DES_1:
	MOV A, R5
	JB  ACC.7,KEY_DE  	; If decryption, rotate right
	MOV DPTR, #LROT-1
	MOV A, R1
	MOVC A, @A+DPTR
	MOV R0, A		; Get the rotation counts and store
				; it in R0
				; Step 2.1L: Left-rotation, for the two 28-bit blocks respectively
LROT_0:	CLR C
	MOV A, BITS_1+6
	RLC A
	MOV BITS_1+6, A
	MOV A, BITS_1+5
	RLC A
	MOV BITS_1+5, A
	MOV A, BITS_1+4
	RLC A
	MOV BITS_1+4, A
	MOV A, BITS_1+3
	RLC A
	MOV BITS_1+3, A
	MOV B.0, C
	MOV C, ACC.4
	MOV (BITS_1+6).0, C
	MOV C, B.0
	MOV A, BITS_1+2
	RLC A
	MOV BITS_1+2, A
	MOV A, BITS_1+1
	RLC A
	MOV BITS_1+1, A
	MOV A, BITS_1
	RLC A
	MOV BITS_1, A
	MOV (BITS_1+3).4, C

	DJNZ R0, LROT_0
	SJMP STEP2_2

KEY_DE:
	MOV DPTR, #RROT-1
	MOV A, R1
	MOVC A, @A+DPTR
	JZ STEP2_2			; If no rotations, go directly
	MOV R0, A			; Get the rotation counts and store
					; it in R0
				; Step 2.2R: Right-rotation, for the two 28-bit blocks respectively
RROT_0:	CLR C
	MOV A, BITS_1
	RRC A
	MOV BITS_1, A
	MOV A, BITS_1+1
	RRC A
	MOV BITS_1+1, A
	MOV A, BITS_1+2
	RRC A
	MOV BITS_1+2, A
	MOV A, BITS_1+3
	RRC A
	MOV BITS_1+3, A
	MOV B.0, C
	MOV C, ACC.3
	MOV BITS_1.7, C
	MOV C, B.0
	MOV A, BITS_1+4
	RRC A
	MOV BITS_1+4, A
	MOV A, BITS_1+5
	RRC A
	MOV BITS_1+5, A
	MOV A, BITS_1+6
	RRC A
	MOV BITS_1+6, A
	MOV (BITS_1+3).3, C

	DJNZ R0, RROT_0

STEP2_2:
	; Step 2.2: Select the key using PC-2 permutation (56 bits -> 48 bits)
	; (hard-coded).
	; The permutated block is in (BITS_0) - (BITS_0 + 7)
	; i.e., (BUF) - (BUF+7)

	CLR	A
	MOV C, (BITS_1+1).2
	RLC	A
	MOV C, (BITS_1+2).7
	RLC	A
	MOV C, (BITS_1+1).5
	RLC	A
	MOV C, (BITS_1+2).0
	RLC	A
	MOV C, (BITS_1+0).7
	RLC	A
	MOV C, (BITS_1+0).3
	RLC	A
;-------------------------------------------------------------------------------
	ANL	(BUF+0),#11000000B		;*********
	ORL	(BUF+0),A
;-------------------------------------------------------------------------------
        CLR	A
	MOV C, (BITS_1+0).5
	RLC	A
	MOV C, (BITS_1+3).4
	RLC	A
	MOV C, (BITS_1+1).1
	RLC	A
	MOV C, (BITS_1+0).2
	RLC	A
	MOV C, (BITS_1+2).3
	RLC	A
	MOV C, (BITS_1+1).6
	RLC	A
;-------------------------------------------------------------------------------
       	ANL	(BUF+1),#11000000B		;*********
	ORL	(BUF+1),A

;-------------------------------------------------------------------------------	
	CLR	A
	MOV C, (BITS_1+2).1
	RLC	A	
	MOV C, (BITS_1+2).5
	RLC	A
	MOV C, (BITS_1+1).4
	RLC	A
	MOV C, (BITS_1+0).4
	RLC	A
	MOV C, (BITS_1+3).6
	RLC	A
	MOV C, (BITS_1+0).0
	RLC	A
;-------------------------------------------------------------------------------
	ANL	(BUF+2),#11000000B		;*********
	ORL	(BUF+2),A
;-------------------------------------------------------------------------------	
	CLR	A	
	MOV C, (BITS_1+1).0
	RLC	A
	MOV C, (BITS_1+0).1
	RLC	A
	MOV C, (BITS_1+3).5
	RLC	A
	MOV C, (BITS_1+2).4
	RLC	A
	MOV C, (BITS_1+1).3
	RLC	A
	MOV C, (BITS_1+0).6
	RLC	A
;-------------------------------------------------------------------------------
	ANL	(BUF+3),#11000000B		;*********
	ORL	(BUF+3),A
;-------------------------------------------------------------------------------		
        CLR	A
	MOV C, (BITS_1+5).7
	RLC	A
	MOV C, (BITS_1+6).4
	RLC	A
	MOV C, (BITS_1+3).1
	RLC	A
	MOV C, (BITS_1+4).3
	RLC	A
	MOV C, (BITS_1+5).1
	RLC	A
	MOV C, (BITS_1+6).1
	RLC	A
;-------------------------------------------------------------------------------
	ANL	(BUF+4),#11000000B		;*********
	ORL	(BUF+4),A
;-------------------------------------------------------------------------------		
        CLR	A
	MOV C, (BITS_1+3).2
	RLC	A
	MOV C, (BITS_1+4).0
	RLC	A
	MOV C, (BITS_1+6).5
	RLC	A
	MOV C, (BITS_1+5).3
	RLC	A
	MOV C, (BITS_1+4).7
	RLC	A
	MOV C, (BITS_1+5).0
	RLC	A

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲精品国产一区二区三区四区在线| 成人午夜av在线| 国产精品五月天| 欧美成人猛片aaaaaaa| 在线观看国产日韩| 91香蕉视频在线| 99久久亚洲一区二区三区青草 | 国产麻豆精品theporn| 国产91露脸合集magnet | 成人精品视频.| 成人高清视频在线| 美女mm1313爽爽久久久蜜臀| 亚洲男人都懂的| 国产91丝袜在线播放九色| 老司机精品视频在线| 午夜精品久久久久久久久久| 亚洲一区影音先锋| 久久久国际精品| 中文字幕欧美日韩一区| 国产精品情趣视频| 亚洲伦理在线免费看| 亚洲综合在线观看视频| 国产精品九色蝌蚪自拍| 日韩一区欧美小说| 樱花草国产18久久久久| 一区二区三区四区高清精品免费观看| 亚洲精品五月天| 亚洲国产一区视频| 亚洲免费在线电影| 亚洲天堂免费看| 91美女在线视频| 777午夜精品免费视频| 欧美一区二区三区电影| 日韩精品一区二区三区视频播放| 欧美精品一区二区三区在线| 欧美激情一二三区| 中文字幕乱码亚洲精品一区| 中文字幕在线一区免费| 亚洲一级二级在线| 经典三级一区二区| 91女厕偷拍女厕偷拍高清| 一区二区三区在线播放| 日韩国产欧美三级| 国产精品一区二区在线看| 91影院在线观看| 日韩欧美精品三级| 中文字幕色av一区二区三区| 欧美乱熟臀69xxxxxx| 久久精品一区蜜桃臀影院| 亚洲一区在线观看免费观看电影高清| 日韩和欧美一区二区| 丁香婷婷综合激情五月色| 欧美日韩三级在线| 久久网这里都是精品| 亚洲国产视频a| 国产精品资源站在线| 色综合欧美在线| 精品国产乱码久久久久久老虎| 中文字幕亚洲视频| 欧美色图片你懂的| 亚洲国产岛国毛片在线| 蜜臀av亚洲一区中文字幕| 99久久久国产精品免费蜜臀| 日韩欧美一区二区免费| 亚洲国产成人一区二区三区| 日本伊人色综合网| 99国产麻豆精品| 久久久午夜电影| 日韩国产精品久久| 97精品超碰一区二区三区| 久久久久国产精品人| 奇米影视一区二区三区小说| 欧美视频日韩视频| 一区二区免费视频| 久久精品国产**网站演员| 91亚洲资源网| 自拍偷拍国产精品| 成人夜色视频网站在线观看| 2023国产精品视频| 免费欧美在线视频| 欧美日韩国产一区二区三区地区| 亚洲欧洲av色图| 成人精品高清在线| 久久精品视频在线看| 激情五月播播久久久精品| 色婷婷综合激情| 亚洲精品你懂的| 欧美在线啊v一区| 悠悠色在线精品| 欧美在线999| 香蕉久久夜色精品国产使用方法 | 亚洲免费看黄网站| 成人性生交大合| 国产精品三级电影| 成人av在线一区二区三区| 中文字幕不卡在线播放| 久久精工是国产品牌吗| 日韩精品一区二| 韩国欧美一区二区| 久久久久久久国产精品影院| 成人免费视频网站在线观看| 一区二区日韩电影| 久久精品一区二区三区不卡牛牛| 成人免费毛片高清视频| 亚洲午夜久久久久久久久电影院| 日韩视频免费观看高清完整版 | voyeur盗摄精品| 日韩vs国产vs欧美| 国产精品久久久久影院亚瑟| 在线亚洲高清视频| 国产精选一区二区三区| 一区二区久久久久久| 久久精品免费在线观看| 欧美熟乱第一页| 国产成人免费视频一区| 日韩成人av影视| 一区二区三区四区av| 久久一区二区三区四区| 欧美三级电影一区| eeuss鲁片一区二区三区| 麻豆成人免费电影| 亚洲一区免费观看| 中文字幕日韩一区| 国产日产精品一区| 日韩欧美一二区| 欧美日本在线观看| 色综合天天在线| 国产69精品久久久久毛片| 日本视频免费一区| 午夜免费欧美电影| 亚洲精品高清视频在线观看| 久久―日本道色综合久久| 91精品综合久久久久久| 色综合咪咪久久| 99热精品国产| av在线播放一区二区三区| 国产麻豆视频一区| 激情久久五月天| 麻豆91精品91久久久的内涵| 亚洲国产精品久久久久婷婷884 | 91精品国产免费久久综合| 在线观看亚洲一区| 日本乱人伦一区| 91猫先生在线| 一本久道久久综合中文字幕| 成人免费视频一区| 99久久国产综合精品色伊| 不卡在线视频中文字幕| 国产不卡视频一区二区三区| 国内国产精品久久| 国产一区二区不卡在线| 国产伦精一区二区三区| 国产一区 二区 三区一级| 激情欧美一区二区| 国产精品一级片| 国产成人精品免费一区二区| 粉嫩欧美一区二区三区高清影视| 麻豆精品久久精品色综合| 国产一本一道久久香蕉| 懂色av一区二区三区免费看| 成人动漫一区二区三区| 在线免费观看日本一区| 欧美日韩免费视频| 欧美成人高清电影在线| 日本一区二区三级电影在线观看| 国产精品入口麻豆九色| 亚洲视频在线一区| 日韩精品每日更新| 国产一区二区三区免费看| 成人免费va视频| 在线一区二区观看| 精品少妇一区二区三区在线视频 | 一本久道中文字幕精品亚洲嫩| 欧美在线视频不卡| 精品伦理精品一区| **欧美大码日韩| 视频一区二区中文字幕| 狠狠久久亚洲欧美| 成人av网址在线观看| 欧美吻胸吃奶大尺度电影| 精品国产乱码久久久久久图片| 国产精品免费免费| 视频一区国产视频| 99久久婷婷国产精品综合| 欧美一区二区三区视频在线 | 欧美日韩色综合| 国产日产欧美一区| 天天做天天摸天天爽国产一区| 精一区二区三区| 色伊人久久综合中文字幕| 91精品国产一区二区| 久久久久亚洲综合| 日日夜夜免费精品| 99久久精品免费| 精品少妇一区二区三区日产乱码 | 久久久久久久久久久久电影| 亚洲一区二区三区四区在线免费观看 | 久久久久亚洲蜜桃| 亚洲一区二区三区自拍| 成人黄色片在线观看|