实时搜索: $键盘哪里

$键盘哪里

470条评论 4032人喜欢 2332次阅读 668人点赞
急!!! , 汇编语言题目
从键盘上输入0~9之间的任意一个数字,利用查表的方法计算其平方值,并将计算的结果在显示器上显示出来。
① 以十进制形式输出;
② 以十六进制形式输出。
SSEG SEGMENT STACK
STK DB 20 DUP (0)
SSEG ENDS
DSEG SEGMENT
HATAB DB '0','1','4','9','16','25','$'
DB '36','49','64','81','$'
DSEG END...

神奇宝贝游戏里SELECT是键盘上的哪个键?NO$GBA的模拟器: 如果是No$GBA的话(最完美)
在options - emulation setup可以设定
-----------------------------------------
PSP用的NDS模拟器DeSmuME就是这样
PSP打竖放, 方向向下看, 功能在上面. O, X就是A, B键三角和正方形是X, Y.
L, R, Start和Select和NDS一样.
--------------------------------
iDeas
设定 - 按键设定
----------------
NeeDS(以下载自http://www.cngba.com/thread-16099986-1-1.html)
按键自定义:
“NeeDS”程序本身不带有按键自定义的功能,若要自定义须在程序外设定。
完整解压NeeDS文件压缩包后,文件夹目录中有自带“DeSmuME_keycfg”、“Dualis_keycfg”、 “Ensata_keycfg”、“NeeDS_keycfg”这些BAT格式的文件,在“README”文本中很清楚的说过,这些都是各个NDS模拟器键位生成脚本,但他们所设定的键位使用起来都十分不方便,若玩家想自己设定键位,可以按照以下步骤来修改(直接用文本格式打开“KEY”修改是行不通的!):
①在“NeeDS”目录中找到“NeeDS_keycfg”(其它3个BAT格式的文件也行)文件;
②单击右键,点击“编辑”,弹出文本;
③文本第2行“keycfg ”后的内容是此键位生成脚本的键位设定,顺序是:[上] [下] [左] [右] [选择] [开始] [A] [B] [X] [Y] [L] [R] [左手/右手鼠标],
按以上顺序修改保存(修改位置的参数须根据对应键盘键位的宏来代替,详见后文);
例图:
④双击修改后的BAT格式文件,自动生成新的key.cfg文件(旧的会被覆盖),修改完成。在下次运行NeeDS时,才能生效。
---------------------------------------------------
Ensata(转载自http://www.yxdown.com/infoview/Article_3722.html)
方法1:
假如想将 "W" 设置为 "上",那么先用鼠标左键按住 "up",不要放手!然后按住键盘的 "W" 键,不要放手!随后放开鼠标左键,完成!如此类推!
方法2:
假如你熟识键盘上每个键的键码!~~那么你就可以在ensata.ini里面修改下面的键位便可!~
key DEBUG=50
key Y=35
key X=21
key L=16
key R=18
key DOWN=31
key UP=17
key LEFT=30
key RIGHT=32
key START=54
key SELECT=28
key B=36
key A=22
----------------
其他的就大同小异了......
------------------------
如果说金手指, No$GBA请看:
http://hi.baidu.com/jasy123/blog/item/6f07edccd4c8c11401e92894.html
-------------------------------------
其他模拟器
要用emuhaste, DShaste, EmuCheat这些喔

你好,我想请教一下如何在linux下禁用USB键盘,仅仅是键盘,其他USB设备可以继续使用: [wushuyi@CentOS input]$ ls
by-id event0 event10 event2 event4 event6 event8 mice mouse1
by-path event1 event11 event3 event5 event7 event9 mouse0
自己干掉 这些文件就可以

在武汉东湖南路哪里可以维修MacBook键盘失灵?: 如果是售后,请给苹果笔记本客服打电话,她们会告诉您售后地址和电话的。

在美团、58同城、赶集网、百姓网上搜索查找修电脑的,会有电话和地址,有评论、看口碑。

NDS口袋妖怪金心银魂模拟器中加速键是哪个按键?: 如果你使用NO$GBA或NO$Zoomer模拟器玩的,那加速键是你小键盘上的“+”键
如果你是用DeSmuME模拟器玩的,那加速键是你键盘上的“Tab”键

键盘扫描文件为什么定义延时函数: #include "Key.h"

static uchar GetKeyStatus();
////$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
bit KeyProcess() // 为程序方便而设的返回值
{
uchar i,j;
void (*pFunction)(); // 定义函数指针
void (*code Tab[mHorizontalNumber][mVerticalNumber])()= // 定义函数表
{ { ZeroKey, OneKey, FourKey, SevenKey },
{ DotKey, TwoKey, FiveKey, EightKey },
{ NegativeKey, ThreeKey, SixKey, NineKey },
{ EnterOrShiftKey, CancelKey, OptionKey, PauseKey }
}; // 二维数组,对对应16个按键
NOP();
NOP();
if(!bScanKey)
return 0; // 扫描时间未到,返回(时间值在定时器中设定)
bScanKey=0;
NOP();
NOP();
j=GetKeyStatus(); // 取键值,0xff为无效键,即无按键
NOP();
NOP();
if(bKeyDown||bKeyPress||bKeyUp)
{
i=j>>4;
j=j&0x0f; // 高半字节为行,低半字节为列
if((i<mHorizontalNumber)&&(j<mVerticalNumber))
{
pFunction=Tab[i][j]; // 指向函数入口地址
(*pFunction)(); // 调用函数
}
}
}

//$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
// 判断按键状态:KeyFree,KeyDown,KeyPress,KeyUp,并返回键值
//$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
static uchar ucKey1,ucKey2,ucKeyBak;
static uchar GetKeyCode();
static uchar GetKeyStatus()
{
uchar c;
NOP();
NOP();
mHorizontalAllLow; // 行输入全为0
mJugeVertical(c); // 判断是否有按键
NOP();
NOP();
if((ucKey1==0xff)&&(ucKey2==0xff)&&(c==0xff))
{ // 三个值均为0xff,无按键
bKeyDown=bKeyPress=bKeyUp=0;
bKeyFree=TRUE;
return 0xff; // 没按键
}
else
{
bKeyFree=0;
if(c!=0xff)
c=GetKeyCode(); // 扫描键值
if((ucKey1==0xff)&&(ucKey2==c))
{
ucKey1=ucKey2;
ucKey2=c;
bKeyDown=TRUE;
return c; // 键被按下
}
if((ucKey1==ucKey2)&&(ucKey2==c))
{
NOP();
if(bKeyDown)
{
bKeyPress=TRUE; // 键被按住
bKeyDown=0;
}
return c;
}
if((ucKey1!=0xff)&&(ucKey2==0xff)&&(c==0xff))
{
ucKeyBak=ucKey1;
ucKey1=ucKey2;
ucKey2=c;
if(bKeyPress)
{
bKeyUp=TRUE; // 键弹起
bKeyPress=0;
}
return ucKeyBak;
}
ucKey1=ucKey2;
ucKey2=c;
}
return 0xff;
}

//$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
// 本程序读按键的行列号值,将行列号组合成一个字节后返回, //
// 若读键错误,或没按键均返回0xff。// 低半字节为行,高半字节为列
//$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
static uchar GetKeyCode()
{
uchar i,j,ucTemp,ucH_Value;
NOP();
NOP();
ucH_Value=mH_InitValue;
for(i=0;i<mHorizontalNumber;i++)
{
j=ucH_Value;
mReadVertical(j); // 输出一行低电平后,读列值
NOP();
if(j<mKeyOff)
{
j=(~j)&mKeyOff;
ucTemp=0xff; // 列初值,加0x01为0x00,即第0列
do
{ ucTemp=ucTemp+0x01; }
while ((j=j>>1)>0);
i<<=4; // 把行值移到高四位
return(i|ucTemp); // 返回高四位行值,低四位列值
}
ucH_Value<<=1;
ucH_Value|=0x01; // 下一行输出低电平
}
return 0xff;
}

/* $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ */
/* $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$*/
void InitKeyboard()
{
ucKey1=ucKey2=0xff;
}

以下是键盘专用头文件。文件名 Key.h

/*$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
矩阵键盘键值扫描,功能处理函数
本程序处理4*4的矩阵键盘,适用于8051系列单片机。行输出在P1口高四位,
列输入在P1口低四位,如果不同,则需修改键值读取函数即:GetKeyCode();
在键盘初始化程序InitKeyboard中把ucKey1和ucKey2赋值0xff
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$*/

#include "head.h"
#define mHorizontalNumber 4 // 总行数
#define mVerticalNumber 4 // 总列数
#define mKeyOff 0x0f
#define mH_InitValue 0xef
// P14-P17 行 // P10-P13 列
#define mJugeVertical(c) { c=P1&0x0f; c|=0xf0; }
// 判断列值是否全为高电平,即是否有按键
#define mHorizontalAllLow { P1&=0x0f; NOP(); NOP(); NOP();}
// 高四位行线输出全零
#define mReadVertical(c) { P1=c; NOP(); NOP(); NOP(); \
NOP(); NOP(); c=P1&0x0f; }
// 某一行为低电平,读键值

uchar bdata bucKeyStatus; // 键的一般属性标志位
sbit bKeyDown=bucKeyStatus^0; // KeyDown
sbit bKeyPress=bucKeyStatus^1; // KeyPress
sbit bKeyUp=bucKeyStatus^2; // KeyUp
sbit bKeyFree=bucKeyStatus^3; // KeyFree
sbit bScanKey=bucKeyStatus^4; // 定时扫描标志位

void ZeroKey();
void OneKey();
void TwoKey();
void ThreeKey();
void FourKey();
void FiveKey();
void SixKey();
void SevenKey();
void EightKey();
void NineKey();
void DotKey();
void NegativeKey();

void PauseKey();
void PrintKey();
void OptionKey();
void CancelKey();
void EnterOrShiftKey();
ulong FloatBcdToHex(uchar *);
uint DecToHex(uchar,uchar,uchar,uchar);
uchar HexToDec(uint,uchar);

问题如下:
(1):这个程序用计时器中断方式怎么使用? bScanKey不知道什么意思?

if(!bScanKey)
return 0; // 扫描时间未到,返回(时间值在定时器中设定)
bScanKey=0;
原程序中的这句是用来定时扫描,那我可不可以这样:

return 0;
bScanKey=0;
这样做的原因就是不用定时器,直接让它实时扫描,这样做可以吗?
如果不可以我要在里面加入怎样的定时器设定?能否给我个例子?

(2):还有他的两次扫描体现在哪里啊?没看出来。是不是通过ucKey1、ucKey2来实现两
次扫描?

(3):请教这句话怎么理解?
if(bKeyDown||bKeyPress||bKeyUp)
{
i=j>>4; j=j&0x0f; // 高半字节为行,低半字节为列
if((i<mHorizontalNumber)&&(j<mVerticalNumber))
{
pFunction=Tab[i][j]; // 指向函数入口地址
(*pFunction)(); // 调用函数
}
}
上述语句中;i,j均为十六进制的数,但是mHorizontalNumber=mVerticalNumber=4,为
十进制数,如何比 较?有点纳闷?如果这句是正确的,能否解释一下。
还有一句类似的:
mJugeVertical(c); // 判断是否有按键
NOP();
NOP();
if((ucKey1==0xff)&&(ucKey2==0xff)&&(c==0xff))
{ // 三个值均为0xff,无按键
bKeyDown=bKeyPress=bKeyUp=0;
bKeyFree=TRUE;
return 0xff; // 没按键

从键盘上输入0~9之间的任意一个数字,利用查表的方法计算其平方值,并将计算的结果在显示器上显示出来。: CODES SEGMENT
MAIN PROC FAR
ASSUME CS:CODES,DS:DATAS,SS:STACKS
START: MOV AX,DATAS
MOV DS,AX
MOV AX,STACKS
MOV SS,AX
MOV SP,OFFSET TOP ;取得TOP的偏移地址,送入SP
MOV BX,OFFSET TABLE ;取得TABLE的偏移的地址,送入BX
MOV DX,OFFSET BUF
MOV AH,9 ;调用DOS的9号功能,输出一串字符串
INT 21H
MOV AH,01h ;调用1号功能,从键盘输入一个数,ASCII值内容送入AL
INT 21H
MOV AH,01H ;将AX寄存器变成0000 0000 **** *****B
AND AL,0FH ;将AL中的低四位取出,是0-9的数字
ADD BX,AX ;将0-9中任意输入的一个,加在TABLE的偏移址上,得到其平方值
MOV DL,[BX] ;把平方值取出,放入DL中,调用2号功能,显示其ASCII值
MOV AH,02H ;调用DOS命令显示一个字符,如果为1,则ASCII码对应于一个笑脸
INT 21H
MOV AH,4CH ;返回DOS。
INT 21H
RET
MAIN ENDP
CODES ENDS
END START

急求电脑键盘顺序: 键盘非常悠久,早在1714年,就开始相继有英、美、法、意、瑞士等国家的人发明了各种形式的打字机,最早的键盘就是那个时候用在那些技术还不成熟的打字机上的。直到1868年,“打字机之父”——美国人克里斯托夫·拉森·肖尔斯(Christopher Latham Sholes)获打字机模型专利并取得经营权经营,又于几年后设计出现代打字机的实用形式和首次规范了键盘,即现在的“QWERTY”键盘。

为什么要将键盘规范成现在这样的“QWERTY”键盘按键布局呢?这是因为最初,打字机的键盘是按照字母顺序排列的,而打字机是全机械结构的打字工具,因此如果打字速度过快,某些键的组合很容易出现卡键问题,于是克里斯托夫·拉森·肖尔斯(Christopher Latham Sholes)发明了QWERTY键盘布局,他将最常用的几个字母安置在相反方向,最大限度放慢敲键速度以避免卡键。肖尔斯在1868年申请专利,1873年使用此布局的第一台商用打字机成功投放市场。这就是为什么有今天键盘的排列方式。

QWERTY的键盘按键布局方式非常没效率。比如:大多数打字员惯用右手,但使用QWERTY键盘,左手却负担了57%的工作。两小指及左无名指是最没力气的指头,却频频要使用它们。排在中列的字母,其使用率仅占整个打字工作的30%左右,因此,为了打一个字,时常要上上下下移动指头。

1888年全美举行打字公开比赛,法院速记员马加林按照明确的指法分工展示了他的盲打技术,错误只有万分之三,使在场人惊讶不已,据记载马加林的奖金是$500元, 从这以后很多人效仿这种盲打,在美国也开始有了专门培养打字员的学校。

由于盲打技术的出现,使得击键速度足以满足日常工作的需要,然而在60年后(1934年),华盛顿一个叫德沃拉克(Dvorak)的人为使左右手能交替击打更多的单词又发明了一种新的排列方法,这个键盘可缩短训练周期1/2时间,平均速度提高35%。DVORAK键盘布局原则是:1、尽量左右手交替击打,避免单手连击;2、越排击键平均移动距离最小;3、排在导键位置应是最常用的字母。

比DUORAK键盘更加合理、高效的是理连·莫尔特(Lillian Malt)发明的MALT键盘。它改变了原本交错的字键行列,并使拇指得到更多使用、使“后退键”(Backspace)及其他原本远离键盘中心的键更容易触到。但MALT键盘需要特别的硬件才能安装到电脑上,所以也没有得到广泛应用。

到了20世纪中期,键盘又多了一个用武之地——作为电脑的基本输入设备。另一方面,至今,“QWERTY”键盘仍然是使用的最多的键盘布局方式,这是一个非常典型的“劣势产品战胜优势产品”的例子。

有什么性价比高的光污染机械键盘推荐呢?: 说起RGB,高端里面少不了雷蛇,推荐雷蛇黑寡妇蜘蛛竞技幻彩版/雷蛇黑寡妇蜘蛛X幻彩版。国内品牌里RGB机械键盘的话做的最早是达尔优,灯光系统方面做的很出色,其中EK925暗夜流光机械键盘确实不错。独立双区RGB幻彩灯光系统,支持1680万色自定义和流光灯效,灯效华丽。并且整个双区灯效系统有四颗专门按键控制切换。

  • nba中谁的跳远最好

    子宫内膜厚与性生活有快感吗?: 没有关系。 ...

    826条评论 3197人喜欢 3451次阅读 577人点赞
  • 五儿谁演的

    (只找男性专家)男同性恋,同志的疑惑.做0者被进入真的会兴奋吗?: 并不是全部都会前列腺贴近直肠,约在从括约肌开始算9-12cm处。整个性交过程类似于前列腺按摩,是否会兴奋主要取决于前列腺位置的前后。 ...

    304条评论 3491人喜欢 6231次阅读 484人点赞
  • first love是谁唱的

    我玩过劲乐团里面有个歌曲<劲乐超快感>请问各位有没有这个歌曲的其他版本?: 好象没了吧!。。你怎么喜欢上这个歌哦。。。。我也是玩O2的。。 ...

    423条评论 1188人喜欢 6039次阅读 538人点赞
  • 0除多少等于0

    新条真由的所有完结漫画: 《快感指令》《恶魔爱神》《霸王爱人》《爱的枷锁》《恋爱颂(或情场霸王)》 以上是中长篇的,应该属她的代表作吧。《沉溺爱歌》 等新作应该都没有连载完。 ...

    271条评论 5732人喜欢 1871次阅读 431人点赞
  • 2016年是第几个地球日

    怎么觉得做0只有痛没有快感呢: 估计那里有炎症,还有些肾虚。呵呵 ...

    671条评论 2477人喜欢 6657次阅读 266人点赞