建材加盟网
键盘数字九键
时间:2017-04-17 06:32:52 来源:建材加盟网

篇一:编写程序,要求从键盘输入一个自然数(0~9),将其转换成中文大写数字(零~玖)。

编写程序,要求从键盘输入一个自然数(0~9),将其转换成中文大写数字(零~玖)。

篇二:密码破译

比较有名的密码及一些加密方式

1.栅栏密码

2.猪圈密码

3.凯撒移位

4.摩斯电码

5.四方密码

6.希尔密码

7. ROT13(回转十三位)

8.键盘密码

9.维吉尼亚密码

10.单表替代密码(频率,bingo的破译密码)

常用trick

1.九键拼音(数字??字母)

2.电脑与手机九键数字的转换(数字??数字)

3.字母与字母序的字母数字转换(字母??数字)

4.元素周期表与序号的转换(字母??数字)

1.栅栏密码

How to use 5*6 = 153246

99怎么用呢?首先后面的6个数是从1到6,我考虑是解读的顺序。那么前面可能就意味着是把字符每6个进行分组了。那么把这30个字符分成5组,每组按照153246的顺序读,结果是:MOUGIL / YTHWNO / LHAIGV / OISTYE / VNNHO.MIUOGL / YNHTWO / LGAHIV / OYSITE / VHNNH.

既然一共是30个字符,确实能够分成5组,栅栏密码。也就是说,5个一组横着写,然后纵向阅读,可能就有意义了:

M O U G I L

Y T H W N O

L H A I G V

O I S T Y E

V N N H O .

再考虑到153246可能是按照列阅读的顺序,那么,我们编个号,如下:

|1|2|3|4|5|6|

|M|O|U|G|I|L|

|Y|T|H|W|N|O|

|L|H|A|I|G|V|

|O|I|S|T|Y|E|

|V|N|N|H|O|.|

然后,我们把这个表竖着看,按照1->5->3->2->4->6的顺序排列一下,如下: |1|5|3|2|4|6|

|M|I|U|O|G|L|

|Y|N|H|T|W|O|

|L|G|A|H|I|V|

|O|Y|S|I|T|E|

|V|O|N|N|H|.|

那么我们调整一下列的顺序,并且把竖排变成横排,变成了:

MYLOV

INGYO

UHASN

OTHIN

GWITH

LOVE.

在考虑到空格的位置,解密如下: MO UGILYT HWN OLH AIGVOIS TYEV NNHO.

MY LOVING YOU HAS NOTHING WITH LOVE.

也就是:My loving you has nothing with love. 解密成功。

例:

密码:I’D LIKE TO LIVE WITH YOUIN A SMALL TOWN, WHERE THERE ARE ETERNAL TWILIGHTS AND ETERNAL BELLS.

明文:LK’ IDIL VT IOET YWHI ENS UA I OLOAT LMWE N H,WHRE ETRE TAE REATRLN EIHIGLWNE SDA TNLEART L.ESL B

KEY:6*13=>635142

回应:

HVO AUYE MBNE EL FOYN YR.TEU U

KEY:6*4=>635142

2.猪圈密码

Key:

"X marks the spot"的加密结果将呈现如下:

3.凯撒移位

快速破译的网站:

http://quipqiup.com/

可参考的代码A

public class ShiftCode {

private static String Ciphertext = "VRPHWLPHV L ZDQW WR FKDW ZLWK BRX, EXW L KDYH QR UHDVRQ WR FKDW ZLWK BRX";

private static String getString(int i){

篇三:实验九键盘接口

/*

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

;* 北京达盛科技有限公司

;*研 发 部

;*

;*

;*

;*--------------------------------------------- 文件信息9 ---------------;*

;* 文件名称 : 7279.C

;* 文件功能 : 该文件为测试7279的测试程序,CPU=TMS320VC5402

;* 接口说明: CS=XF,CLK=BCLKX1,DATA=BCLKR1

方向 BFSX1 ;BFSX1='1' BCLKR1输出数据给7279,DATA7279<=

BCLKR1

; BFSX1='0' 7279输出数据给BCLKR1,BCLKR1<=DATA7279 ; 键盘中断 INT0<=KEY7279 (54X的中断0)

*/

//------------------头文件--------------------------------------

//#include "MMRegs.h"

#include "DspRegDefine.h"//VC5402 寄存器定义

//---------------------------------------------------------------

/* ****************** 宏定义 ***************

************************************************************

*/

#define UCHARunsigned char

#define UINT16 unsigned int

#define UINT32 unsigned long

#define TRUE 1

#define FALSE 0

//---------------------------------------------------------------

//--------------- HD7279A 指令 -----------------------------

#define CMD_RESET 0xa4 //复位

#define CMD_TEST 0xbf //测试

#define RTL_UNCYL 0xa1 //左移

#define RTR_UNCYL 0xa0 //右移

#define RTL_CYCLE 0xa3 //循环左移

#define RTR_CYCLE 0xa2 //循环右移

#define DECODE00x80 //下载数据按方式0译码

#define DECODE10xc8 //下载数据按方式1译码

#define UNDECODE 0x90 //下载数据但不译码

#define BLINKCTL 0x88 //闪烁控制

#define ACTCTL 0x98 //消隐控制

#define SEGON 0xe0 //段点亮

#define SEGOFF 0xc0 //段关闭

#define CMD_READ 0x15 //读键盘数据

//---------------------------------------------------------

/*端口定义 */

//---------------------------------------------------------

ioport UINT16 port8001; //定义输出io端口为0x8001;

//----------------------------------------------------------

/*全局变量定义 */

//---------------------------------------------------------

char send_buff = 0x00; //发送缓冲

char rece_buff = 0x00; //接收缓冲

UINT16 data_buff = 0x0000; //数据缓冲

UINT16 show = 0x00aa;

/*

********************************************************************** *************** 所使用的函数原型 *****************

********************************************************************** */

void cpu_init(void); //初始化CPU

void mcbsp1_init(void); //初始化MCBSP1设置寄存器,配置成IO模式

void xint0_init(void);//外部中断0初始化子程序

interrupt void ExtInt0();//中断0中断子程序

void cs_high(void);//片选置高

void cs_low(void); //片选置低

void send(void);// 发送一个字节 8BIT

void receive(); // 接收一个字节 8BIT

void delay_25ms(void);//25ms延迟 --复位延迟

extern void delay_8us(void); //8us延迟 --T2\T3\T6\T7

extern void delay_25us(void);//25us延迟 --T4\T5

extern void delay_50us(void);//50us延迟 --T1

void Delay(UINT16 numbers); //延迟

//-------------------------------------------------------------------

/*

************************************************************************ *********************** 函数定义 ******************

************************************************************************ */

//--------------------------------------------------------------------

// 函数名称 : void cpu_init(void)

// 函数说明 : 初始化CPU

// 输入参数 : 无

// 输出参数 : 无

//--------------------------------------------------------------------

void cpu_init(void)

{

asm(" nop ");

asm(" nop ");

asm(" nop ");

//-------------------------------------------------------------------

//CLKMD DEFINITIONS:

// PLLMUL (bit 15-12) - 0000 PLL multiplier = 0 (mult by 1)

// PLLDIV (bit 11) - 0PLL divider = 0 (div by 1)

// PLLCOUNT (bit 10-3)-11111111 PLL counter set to max

// PLLONOFF (bit 2)- 1PLL on

// PLLNDIV (bit 1) -1 Select PLL mode

// PLLSTATUS (bit 1) - x PLL Status (read only)

// ------------------

// 0000011111111111 = 0x07ff CLKMD=1 X CLKIN

//--------------------------------------------------------------------

*(unsigned int*)CLKMD=0x0;//switch to DIV mode clkout= 1/2 clkin

while(((*(unsigned int*)CLKMD)&01)!=0);

*(unsigned int*)CLKMD=0x07ff;//switch to PLL X 1 mode

//--------------------------------------------------------------------

// ST0 DEFINITIONS:

// ARP (bit 15-13) - 000 Auxiliary register pointer

// TC(bit 12) - 1 Test/control flag

// C (bit 11) - 1Carry is set to 1 if the result of an addition generates a carry; it is cleared to 0 if the

// result of a subtraction generates a borrow. // OVA (bit 10) -0 Overflow flag for accumulator A

// OVB (bit 9) - 0 Overflow flag for accumulator B

// DP(bit 8-0)- 00000000 Data-memory page pointer

// --------------------

// 0001 1000 0000 0000 =0x1800 Reset value

//--------------------------------------------------------------------

//*(unsigned int*)ST0=0x1800;

//--------------------------------------------------------------------

// ST1 DEFINITIONS:

// BRAF (bit 15) - 0 Block-repeat active flag

// CPL(bit 14) - 1 Compiler modeCPL=0 DP;CPL=1 SP // XF (bit 13) -1XF status

// HM (bit 12) - 0 Hold mode

// INTM (bit 11) - 1 Interrupt mode INTM=0,All unmasked interrupts are enabled

// Reser (bit 10) -0Always read as 0

// OVM(bit 9)- 0 Overflow mode

// SXM(bit 8)- 1 Sign-extension mode

// C16(bit 7)-0Dual 16-Bit/double-precision arithmetic mode // FRCT (bit 6)- 0 Fractional mode

// CMPT (bit 5)- 0 Compatibility mode

// ASM(bit 4-0) -00000 Accumulator shift mode

// --------------------

// 0110 1001 0000 0000 =0x2900 Reset value

//--------------------------------------------------------------------

//*(unsigned int*)ST1=0x6900;

//--------------------------------------------------------------------

//IPTR DEFINITIONS?

// IPTR (bit 15-7) - 001111111 Run-time Interrupt vector location = 0x3f80 (for now)

// MP/~MC (bit 6) - 1Turn off internal Instruction ROM (use RAM) // OVLY(bit 5) -1 Turn on internal RAM

// AVIS(bit 4) - 1 Address visibility on

// DROM(bit 3) - 0Data ROM of FF00~FFFF is external

// CLKOFF (bit 2) -0 Clockout enabled,only for use clkout=cpu clock

// SMUL(bit 1) - 1 Saturate before multiply on MAC // SST (bit 0) - 0Do not saturate before store

// -----------------

// 0011 1111 1111 0010 = 0x3ff2

/*---------------------------------------------------------------------*/

*(unsigned int*)PMST=0x3FF2;

//---------------------------------------------------------------------

// SWWSR DEFINITIONS?

// XPA(bit 15) - 0 Extended program address control bit. XPA is used in conjunction with the program space fields

//(bits 0 through 5) to select the address range for program space wait states

// I/O(bits 14-12) - 111 set to max wait states for seven

// Data1 (bits 11-9) - 111 Seven Wait state for Upper data space(0x8000-0xFFFF)

// Data2 (bits 8-6)- 111 Seven Wait states for Lower data space (0x0000 - 0x7FFF)

// Prog1 (bits 5-3)- 111 Seven Wait state for Upper program space. (xx8000-xxFFFF)

// Prog2 (bits 2-0)- 111 Seven Wait states for Program space. (xx0000-xx7FFF)

//-----------------

// 1 111 111 111 111 111 - 0x7fff

/*--------------------------------------------------------------------*/

*(unsigned int*)SWWSR=0x7fff;

//--------------------------------------------------------------------

//SWCR DEFINITIONS?

// Reserved (bits 15-1)

// SWSM (bit 0) - 1 wait-state base values are mulitplied by 2 // for a maximum of 14 wait states.

// --------------------------

// 0000 0000 0000 0001

//--------------------------------------------------------------------

*(unsigned int*)SWCR=0x0001;

//--------------------------------------------------------------------

//BSCR DEFINITIONS?

//BNKCMP (bit 15-12)- 1111 Bank compare. Determines the external memory-bank size. BNKCMP is used to mask the four MSBs of

// an address.

// 1111 4k

// 1110 8k

// 1100 16k

// 1000 32k

// 0000 64k

// PS-DS (bit 11) - 1 One extra cycle is inserted between consecutive data and program reads.


键盘数字九键
由:建材加盟网互联网用户整理提供,链接地址:
http://m.yuan0.cn/a/5707.html
转载请保留,谢谢!
最近更新/ NEWS
推荐专题/ NEWS