CN111694574A - 指令代码处理的方法、装置、设备以及存储介质 - Google Patents

指令代码处理的方法、装置、设备以及存储介质 Download PDF

Info

Publication number
CN111694574A
CN111694574A CN202010533250.7A CN202010533250A CN111694574A CN 111694574 A CN111694574 A CN 111694574A CN 202010533250 A CN202010533250 A CN 202010533250A CN 111694574 A CN111694574 A CN 111694574A
Authority
CN
China
Prior art keywords
instruction code
instruction
description file
code description
user
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202010533250.7A
Other languages
English (en)
Other versions
CN111694574B (zh
Inventor
王知践
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN202010533250.7A priority Critical patent/CN111694574B/zh
Publication of CN111694574A publication Critical patent/CN111694574A/zh
Application granted granted Critical
Publication of CN111694574B publication Critical patent/CN111694574B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/42Syntactic analysis
    • G06F8/427Parsing

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本申请公开了指令代码处理的方法、装置、设备以及存储介质,涉及信息处理领域和深度学习领域。具体实现方案为:接收用户自定义的指令代码;从预先存储的多个指令代码描述文件中,获取与所述指令代码相匹配的第一指令代码描述文件;利用所述第一指令代码描述文件对所述指令代码进行处理,生成被控对象可识别的指令。本申请解决了代码学习入门门槛高的问题,在本申请中,用户可以根据自定义的指令代码实现对于被控对象的控制。一方面可以降低编程语言的入门难度,培养用户的兴趣。另一方面可以使用户参与并体验代码编译的整个过程,提高用户的学习效率。

Description

指令代码处理的方法、装置、设备以及存储介质
技术领域
本申请涉及计算机技术领域,尤其涉及信息处理领域和深度学习领域。
背景技术
现有的指令编码采用成熟的编程语言,例如C语音、BASIC语言等。对于初学者而言,快速熟练的运用成熟的编程语言难度较大,由此会对初学者的学习带来挫败感。
发明内容
本申请提供了一种指令代码处理的方法、装置、设备以及存储介质。
根据本申请的一方面,提供了一种指令代码处理的方法,包括以下步骤:
接收用户自定义的指令代码;
从预先存储的多个指令代码描述文件中,获取与指令代码相匹配的第一指令代码描述文件;
利用第一指令代码描述文件对指令代码进行处理,生成被控对象可识别的指令。
根据本申请的另一方面,提供了一种指令代码处理的装置,包括:
指令代码接收模块,用于接收用户自定义的指令代码;
第一指令代码描述文件获取模块,用于从预先存储的多个指令代码描述文件中,获取与指令代码相匹配的第一指令代码描述文件;
指令生成模块,用于利用第一指令代码描述文件对指令代码进行处理,生成被控对象可识别的指令。
第三方面,本申请实施例提供一种电子设备,包括:
至少一个处理器;以及
与至少一个处理器通信连接的存储器;其中,
存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行本申请任意一项实施例所提供的方法。
第四方面,本申请实施例提供一种存储有计算机指令的非瞬时计算机可读存储介质,计算机指令用于使计算机执行本申请任意一项实施例所提供的方法。
根据本申请的技术解决了代码学习入门门槛高的问题,在本申请中,用户可以根据自定义的指令代码实现对于被控对象的控制。一方面可以降低编程语言的入门难度,培养用户的兴趣。另一方面可以使用户参与并体验代码编译的整个过程,提高用户的学习效率。
应当理解,本部分所描述的内容并非旨在标识本申请的实施例的关键或重要特征,也不用于限制本申请的范围。本申请的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本申请的限定。其中:
图1是根据本申请第一实施例指令代码处理的方法的流程图;
图2是根据本申请第一实施例获取第一指令代码描述文件的流程图;
图3是根据本申请第一实施例生成被控对象可识别的指令的流程图;
图4是根据本申请第一实施例游戏界面示意图;
图5是根据本申请第一实施例游戏界面示意图;
图6是根据本申请第二实施例指令代码处理的装置的示意图;
图7是根据本申请第二实施例第一指令代码描述文件获取模块的示意图;
图8是根据本申请第二实施例指令生成模块的示意图;
图9是用来实现本申请实施例的指令代码处理的方法的电子设备的框图。
具体实施方式
以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
如图1所示,本申请提供一种指令代码处理的方法,包括以下步骤:
S101:接收用户自定义的指令代码。
S102:从预先存储的多个指令代码描述文件中,获取与指令代码相匹配的第一指令代码描述文件。
S103:利用第一指令代码描述文件对指令代码进行处理,生成被控对象可识别的指令。
在本实施例中,用于处理指令代码的执行主体可以是服务器,带屏智能终端等。执行主体中预先存储有至少一个指令代码描述文件。指令代码描述文件可以是用户预先编写并存储的,指令代码描述文件可以用于对用户自定义的指令代码进行解析。
在一些实施方式中,用户预先编写指令代码描述文件并存储在上述执行主体中,之后根据指令代码描述文件中的规则编写指令代码。
例如,被控对象是卡牌消除类游戏中的移动光标或游戏人物。第一用户在第一指令代码描述文件中可以进行以下声明:
“Turn:该关键字可以用于反转游戏的棋子,是个没有参数的关键字;
Goleft N:该关键词控制移动光标或游戏人物进行左转前进N步,N为参数;
Goright N:该关键词控制移动光标或游戏人物进行右转前进N步,N为参数;
Gostraight N:该关键词控制移动光标或游戏人物进行直线前进N步,N为参数;
Godown N:该关键词控制移动光标或游戏人物进行向下前进N步,N为参数;
Next:该关键词可以在一关游戏结束后,进入下一关;
():该关键词控执行顺序的优先级。”
在后续游戏过程中,第一用户可以输入自定义的符合上述第一指令代码描述文件中所规定的指令代码,例如,自定义的指令代码可以是“(turn(goleft 1(godown 2(goleft2))))”。上述自定义的指令代码经过第一用户预先存储的第一指令代码描述文件的处理后,可以得到被控对象可识别的指令,即控制游戏中的移动光标或游戏人物首先向左移2步,之后向下移动2步,之后向左移动1步,反转棋子。从而实现对于被控对象的控制。
另外,对于同一卡牌消除类游戏,第二用户在第二指令代码描述文件中以第二用户习惯的表达方式进行声明。示例性的,第二指令代码描述文件中可以包括:
“翻转:该关键字可以用于反转游戏的棋子,无参数;
往左走X步:该关键词控制移动光标或游戏人物进行左转前进X步,参数是X;
往右走X步:该关键词控制移动光标或游戏人物进行右转前进X步,参数是X;
往上走X步:该关键词控制移动光标或游戏人物进行上行前进X步,参数是X;
往下走X步:该关键词控制移动光标或游戏人物进行向下前进X步,参数是X;
下一关:该关键词可以在一关游戏结束后,进入下一关;
以文字由左至右出现的顺序作为执行顺序”等。
在第二用户输入自定义的符合上述第二指令代码描述文件中所规定的指令代码时,可以对游戏中的移动光标或游戏人物进行相应的控制。
通过上述方案,由于指令代码描述文件是用户预先编写并存储的。即,指令代码描述文件中的规则是用户自定义的。因此,用户可以根据自定义的指令代码实现对于被控对象的控制。一方面可以降低编程语言的入门难度,培养用户的兴趣。另一方面可以使用户参与并体验代码编译的整个过程,提高用户的学习效率。
如图2所示,在一种实施方式中,步骤S102包括:
S1021:获取指令代码的标签。
S1022:根据指令代码的标签,从预先存储的多个指令代码描述文件中确定具有相同标签的指令代码描述文件,作为与指令代码相匹配的第一指令代码描述文件。
在一种场景下,可能存在对于同一款游戏,多个用户均自定义了指令代码。例如,可能存在成千上万个用户均自定义了指令代码的情况。基于此,在接收到当前用户自定义的指令代码后,需要在已存储的多个指令代码描述文件中快速确认与当前用户自定义的指令代码相匹配的指令代码描述文件。
例如,可以在第一用户上传指令代码描述文件时,利用第一用户的IP地址或者登陆名等信息为该第一用户分配标签。同时可以将分配的标签与该第一用户上传的指令代码描述文件相关联。将第一用户上传的指令代码描述文件作为第一指令代码描述文件。
在后续接收该第一用户的自定义指令代码时,可以率先提取该第一用户的标签。将该第一用户的标签与已存储的各指令代码描述文件的标签进行对比,从而确定出具有相同标签信息的第一指令代码描述文件。
将确定出的第一指令代码描述文件作为第一用户的指令代码相匹配的指令代码描述文件。
通过上述方案,在存储有多个指令代码描述文件的情况下,可以根据标签将用户的指令代码与指令代码描述文件相关联,以实现可以正确的执行用户的指令代码。
如图3所示,在一种实施方式中,步骤S103包括:
S1031:利用指令代码描述文件对指令代码进行解析。
S1032:在解析通过的情况下,根据解析结果生成抽象语法树。
S1033:对抽象语法树进行编译执行,生成被控对象可识别的指令。
在当前实施方式中,可以采用底层虚拟机(LLVM,Low Level Virtual Machine)实现上述步骤。
利用指令代码描述文件对指令代码进行解析可以得到令牌(Token)。仍以上述示例中自定义的指令代码为“(turn(goleft 1(godown 2(goleft 2))))”进行说明。通过解析得到的令牌可以包括关键字“turn”、“goleft”、“godown”、“goleft”,参数“1”、“2”,以及通过小括号划分出的优先级等。
由于在上述示例中,用户的自定义指令代码符合指令代码描述文件中声明的规则。因此可以解析通过得到抽象语法树。抽象语法树用于以结构化的形式表现出解析出的令牌。
将采用抽象语法树表现出的令牌进行编译执行,转换为LLVM的中间表示(IR,Intermediate Representation)。对于中间表示,可以根据被控对象的运行平台进行相应的转化操作,得到被控对象可识别的指令。
被控对象的运行平台可以是模拟器、进阶精简指令集机器(ARM,Advanced RISCMachine)、微处理器(Power PC)等。
通过上述方案,可以将用户自定义的指令代码进行解析、编译执行最终可以得到被控对象可识别的指令。
在一种实施方式中,在步骤S1031之后,还包括:
在解析未通过的情况下,显示解析错误信息。
仍以前述示例进行说明,例如,用户输入了错误的自定义的指令代码,示例性的,该错误的自定义的指令代码为“(turn(goleft 1(godown 2(golaft 2))”。则出现了前后括号未能正确对应的错误,以及拼写错误等。利用指令代码描述文件对指令代码进行解析,则无法可以得到令牌(Token)。基于此,可以显示解析错误信息。
通过上述方案,可以实现对于用户自定义的指令代码进行正确性检测。在出现错误的情况下,可以及时向用户进行报告。
在一种实施方式中,被控对象包括电子游戏中的游戏角色。
如图4所示,电子游戏可以是卡牌消除类游戏。该游戏包括游戏画面部分和指令代码接收部分。用户可以在指令代码接收部分输入用户自定义的指令代码。
对接收到的用户自定义的指令代码进行处理,可以得到对于游戏角色的控制指令。仍以上述示例中自定义的指令代码为“(turn(goleft 1(godown 2(goleft 2))))”进行说明。对上述指令代码进行处理,得到对于游戏角色的控制指令。即,向左走2步,再向下走2步,再向左走1步,完成第一张卡牌的反转。
此后,用户可以在指令代码接收部分继续输入用户自定义的指令代码。例如,继续输入的用户自定义的指令代码为“(turn(godown 2(goright 1)))。”对上述指令代码进行处理,得到控制游戏角色的控制指令。即,向右走1步,再向下走2步,完成第二张卡牌的反转。
结合图5所示,第一张卡牌反转后的图案为“房子”的图案。第二张卡牌反转后的图案为“五角星”的图案。由于两张卡牌反转后的图案不一致,因此无法实现卡牌消除。
用户可以再次输入用户自定义的指令代码对卡牌进行反转,在反转的两张卡片的图案相同的情况下,可以将反转的两张卡牌消除。在当前关卡的卡片全部消除的情况下,可以进入下一关卡。
本申请以卡牌消除类游戏为例进行说明,而实际场景中,可以将本申请的指令代码处理的方法与各类不同游戏相结合。
通过上述方案,将被控对象和电子游戏的角色相关联,可以寓教于乐,提升指令代码编写的趣味性。
如图6所示,在一种实施方式中,本申请提供一种指令代码处理的装置,包括以下部件:
指令代码接收模块601,用于接收用户自定义的指令代码。
第一指令代码描述文件获取模块602,用于从预先存储的多个指令代码描述文件中,获取与指令代码相匹配的第一指令代码描述文件。
第一指令代码描述文件获取模块602,用于利用第一指令代码描述文件对指令代码进行处理,生成被控对象可识别的指令。
由于指令代码描述文件是用户预先编写并存储的。即,指令代码接收模块601所接收到的指令代码是用户自定义的。第一指令代码描述文件获取模块602根据不同用户的自定义指令代码,确定出与之匹配的指令代码描述文件。最终由第一指令代码描述文件获取模块602根据自定义的指令代码实现对于被控对象的控制。通过上述方案,一方面可以降低编程语言的入门难度,培养用户的兴趣。另一方面可以使用户参与并体验代码编译的整个过程,提高用户的学习效率。
如图7所示,在一种实施方式中,第一指令代码描述文件获取模块602,包括:
指令代码标签获取子模块6021,用于获取指令代码的标签。
第一指令代码描述文件获取执行子模块6022,用于根据指令代码的标签,从预先存储的多个指令代码描述文件中确定具有相同标签的指令代码描述文件,作为与指令代码相匹配的第一指令代码描述文件。
在一种场景下,可能存在对于同一款游戏,多个用户均自定义了指令代码。例如,可能存在成千上万个用户均自定义了指令代码的情况。基于上述情况,指令代码标签获取子模块6021可以获取与指令代码对应的标签。第一指令代码描述文件获取执行子模块6022根据标签,即可在预先存储的多个指令代码描述文件中确定具有相同标签的指令代码描述文件,从而完成指令代码和指令代码描述文件的匹配。
通过上述方案,在存储有多个指令代码描述文件的情况下,可以根据标签将用户的指令代码与指令代码描述文件相关联,以实现可以正确的执行用户的指令代码。
如图8所示,在一种实施方式中,指令生成模块603,包括:
指令代码解析子模块6031,用于利用指令代码描述文件对指令代码进行解析。
抽象语法树生成子模块6032,用于在解析通过的情况下,根据解析结果生成抽象语法树。
指令生成执行子模块6033,用于对抽象语法树进行编译执行,生成被控对象可识别的指令。
通过上述方案,经过指令代码解析子模块6031、抽象语法树生成子模块6032和指令生成执行子模块6033依次执行的解析、生成抽象语法树以及最终编译执行的过程,可以将用户自定义的指令代码进行解析、编译执行最终可以得到被控对象可识别的指令
在一种实施方式中,指令生成模块603,还包括,
解析错误信息显示模块6034,用于在在解析未通过的情况下,显示解析错误信息。
在用户输入了错误的自定义的指令代码,例如拼写错误、逻辑错误(小括号逻辑不对应)等等,则指令代码解析子模块6031则无法解析通过。在此情况下,解析错误信息显示模块6034可以显示出错误信息,以便用户可以解释了解错误,并且更正。
在一种实施方式中,被控对象包括电子游戏中的游戏角色。
根据本申请的实施例,本申请还提供了一种电子设备和一种可读存储介质。
如图9所示,是根据本申请实施例的指令代码处理的方法的电子设备的框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图9所示,该电子设备包括:一个或多个处理器910、存储器920,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图9中以一个处理器910为例。
存储器920即为本申请所提供的非瞬时计算机可读存储介质。其中,所述存储器存储有可由至少一个处理器执行的指令,以使所述至少一个处理器执行本申请所提供的指令代码处理的方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的指令代码处理的方法。
存储器920作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的指令代码处理的方法对应的程序指令/模块(例如,附图6所示的指令代码接收模块601、第一指令代码描述文件获取模块602和第一指令代码描述文件获取模块602)。处理器910通过运行存储在存储器920中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的指令代码处理的方法。
存储器920可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据指令代码处理的方法的电子设备的使用所创建的数据等。此外,存储器920可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器920可选包括相对于处理器910远程设置的存储器,这些远程存储器可以通过网络连接至指令代码处理的方法的电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
指令代码处理的方法的电子设备还可以包括:输入装置930和输出装置940。处理器910、存储器920、输入装置930和输出装置940可以通过总线或者其他方式连接,图9中以通过总线连接为例。
输入装置930可接收输入的数字或字符信息,以及产生与指令代码处理的方法的电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置940可以包括显示设备、辅助照明装置(例如,LED)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(LCD)、发光二极管(LED)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。
此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用ASIC(专用集成电路)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务中,存在的管理难度大,业务扩展性弱的缺陷。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。

Claims (12)

1.一种指令代码处理的方法,包括:
接收用户自定义的指令代码;
从预先存储的多个指令代码描述文件中,获取与所述指令代码相匹配的第一指令代码描述文件;
利用所述第一指令代码描述文件对所述指令代码进行处理,生成被控对象可识别的指令。
2.根据权利要求1所述的方法,其中,所述获取与所述指令代码相匹配的第一指令代码描述文件,包括:
获取所述指令代码的标签;
根据所述指令代码的标签,从预先存储的多个指令代码描述文件中确定具有相同标签的指令代码描述文件,作为与所述指令代码相匹配的第一指令代码描述文件。
3.根据权利要求1或2所述的方法,其中,所述利用所述第一指令代码描述文件对所述指令代码进行处理,生成被控对象可识别的指令,包括:
利用所述指令代码描述文件对所述指令代码进行解析;
在解析通过的情况下,根据解析结果生成抽象语法树;
对所述抽象语法树进行编译执行,生成被控对象可识别的指令。
4.根据权利要求3所述的方法,还包括:
在解析未通过的情况下,显示解析错误信息。
5.根据权利要求1或2所述的方法,其中,所述被控对象包括电子游戏中的游戏角色。
6.一种指令代码处理的装置,包括:
指令代码接收模块,用于接收用户自定义的指令代码;
第一指令代码描述文件获取模块,用于从预先存储的多个指令代码描述文件中,获取与所述指令代码相匹配的第一指令代码描述文件;
指令生成模块,用于利用所述第一指令代码描述文件对所述指令代码进行处理,生成被控对象可识别的指令。
7.根据权利要求6所述的装置,其中,所述第一指令代码描述文件获取模块,包括:
指令代码标签获取子模块,用于获取所述指令代码的标签;
第一指令代码描述文件获取执行子模块,用于根据所述指令代码的标签,从预先存储的多个指令代码描述文件中确定具有相同标签的指令代码描述文件,作为与所述指令代码相匹配的第一指令代码描述文件。
8.根据权利要求6或7所述的装置,其中,所述指令生成模块,包括:
指令代码解析子模块,用于利用所述指令代码描述文件对所述指令代码进行解析;
抽象语法树生成子模块,用于在解析通过的情况下,根据解析结果生成抽象语法树;
指令生成执行子模块,用于对所述抽象语法树进行编译执行,生成被控对象可识别的指令。
9.根据权利要求8所述的装置,所述指令生成模块,还包括,
解析错误信息显示模块,用于在在解析未通过的情况下,显示解析错误信息。
10.根据权利要求6或7所述的装置,其中,所述被控对象包括电子游戏中的游戏角色。
11.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1至5中任一项所述的方法。
12.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行权利要求1至5中任一项所述的方法。
CN202010533250.7A 2020-06-12 2020-06-12 指令代码处理的方法、装置、设备以及存储介质 Active CN111694574B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010533250.7A CN111694574B (zh) 2020-06-12 2020-06-12 指令代码处理的方法、装置、设备以及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010533250.7A CN111694574B (zh) 2020-06-12 2020-06-12 指令代码处理的方法、装置、设备以及存储介质

Publications (2)

Publication Number Publication Date
CN111694574A true CN111694574A (zh) 2020-09-22
CN111694574B CN111694574B (zh) 2023-11-14

Family

ID=72480470

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010533250.7A Active CN111694574B (zh) 2020-06-12 2020-06-12 指令代码处理的方法、装置、设备以及存储介质

Country Status (1)

Country Link
CN (1) CN111694574B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116029380A (zh) * 2022-11-28 2023-04-28 北京百度网讯科技有限公司 量子算法处理方法、装置、设备、存储介质及程序产品

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107729725A (zh) * 2017-10-09 2018-02-23 南京南瑞集团公司 一种基于虚拟机指令修改的Android应用加固系统及方法
US20180063180A1 (en) * 2016-08-26 2018-03-01 Entit Software Llc Javascript security testing
CN108196906A (zh) * 2017-12-28 2018-06-22 京信通信系统(中国)有限公司 一种用户指令处理方法及嵌入式设备
CN108345773A (zh) * 2017-07-27 2018-07-31 江苏通付盾信息安全技术有限公司 基于虚拟机的代码保护方法及装置、电子设备、存储介质
CN109358848A (zh) * 2018-10-17 2019-02-19 杨易超 自定义指令编辑方法、装置和计算机设备
CN109725896A (zh) * 2018-12-29 2019-05-07 深圳点猫科技有限公司 一种在线编辑python代码的方法以及电子设备
CN110532529A (zh) * 2019-09-04 2019-12-03 北京明朝万达科技股份有限公司 一种文件类型的识别方法及装置
CN110795089A (zh) * 2019-10-29 2020-02-14 中国建设银行股份有限公司 一种代码生成方法、装置、设备和存储介质
US10606368B1 (en) * 2018-10-24 2020-03-31 Kye Systems Corp. Method for dynamically adjusting a keyboard output signal
CN111104118A (zh) * 2018-10-29 2020-05-05 百度在线网络技术(北京)有限公司 一种基于aiml的自然语言指令执行方法及系统
CN111177749A (zh) * 2019-12-18 2020-05-19 深圳市金蝶天燕云计算股份有限公司 加密源代码文件处理方法、装置、计算机设备和存储介质

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180063180A1 (en) * 2016-08-26 2018-03-01 Entit Software Llc Javascript security testing
CN108345773A (zh) * 2017-07-27 2018-07-31 江苏通付盾信息安全技术有限公司 基于虚拟机的代码保护方法及装置、电子设备、存储介质
CN107729725A (zh) * 2017-10-09 2018-02-23 南京南瑞集团公司 一种基于虚拟机指令修改的Android应用加固系统及方法
CN108196906A (zh) * 2017-12-28 2018-06-22 京信通信系统(中国)有限公司 一种用户指令处理方法及嵌入式设备
CN109358848A (zh) * 2018-10-17 2019-02-19 杨易超 自定义指令编辑方法、装置和计算机设备
US10606368B1 (en) * 2018-10-24 2020-03-31 Kye Systems Corp. Method for dynamically adjusting a keyboard output signal
CN111104118A (zh) * 2018-10-29 2020-05-05 百度在线网络技术(北京)有限公司 一种基于aiml的自然语言指令执行方法及系统
CN109725896A (zh) * 2018-12-29 2019-05-07 深圳点猫科技有限公司 一种在线编辑python代码的方法以及电子设备
CN110532529A (zh) * 2019-09-04 2019-12-03 北京明朝万达科技股份有限公司 一种文件类型的识别方法及装置
CN110795089A (zh) * 2019-10-29 2020-02-14 中国建设银行股份有限公司 一种代码生成方法、装置、设备和存储介质
CN111177749A (zh) * 2019-12-18 2020-05-19 深圳市金蝶天燕云计算股份有限公司 加密源代码文件处理方法、装置、计算机设备和存储介质

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
CHENGLONG XIAO 等: "Parallel custom instruction identification for extensible processors", 《JOURNAL OF SYSTEMS ARCHITECTURE》, vol. 76, pages 149 - 159, XP085042811, DOI: 10.1016/j.sysarc.2016.11.011 *
张超永 等: "基于Fortify的源代码安全测试规则自定义研究", 《电脑编程技巧与维护》, no. 2, pages 168 - 171 *
赵贝贝: "基于多重指令虚拟的Android应用程序保护方法的研究和实现", 《中国优秀硕士学位论文全文数据库信息科技辑》, no. 1, pages 138 - 213 *
郭海智 等: "基于云计算和语音识别的控制系统", 《电脑与电信》, no. 1, pages 84 - 86 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116029380A (zh) * 2022-11-28 2023-04-28 北京百度网讯科技有限公司 量子算法处理方法、装置、设备、存储介质及程序产品
CN116029380B (zh) * 2022-11-28 2024-07-05 北京百度网讯科技有限公司 量子算法处理方法、装置、设备、存储介质及程序产品

Also Published As

Publication number Publication date
CN111694574B (zh) 2023-11-14

Similar Documents

Publication Publication Date Title
CN111539227B (zh) 训练语义表示模型的方法、装置、设备和计算机存储介质
CN112001180A (zh) 多模态预训练模型获取方法、装置、电子设备及存储介质
CN112507735B (zh) 机器翻译模型的训练方法、装置和电子设备
CN111241245B (zh) 人机交互处理方法、装置及电子设备
CN111079945B (zh) 端到端模型的训练方法及装置
CN111368046A (zh) 人机对话方法、装置、电子设备及存储介质
CN111859997A (zh) 机器翻译中的模型训练方法、装置、电子设备及存储介质
CN111950293B (zh) 语义表示模型的生成方法、装置、电子设备及存储介质
CN111339759A (zh) 领域要素识别模型训练方法、装置及电子设备
CN112001169A (zh) 文本纠错的方法、装置、电子设备和可读存储介质
CN111275190A (zh) 神经网络模型的压缩方法及装置、图像处理方法及处理器
CN111931520B (zh) 自然语言处理模型的训练方法和装置
CN111324715B (zh) 问答机器人的生成方法和装置
CN111241810A (zh) 标点预测方法及装置
CN112560499B (zh) 语义表示模型的预训练方法、装置、电子设备及存储介质
CN112269862B (zh) 文本角色标注方法、装置、电子设备和存储介质
CN111967591B (zh) 神经网络自动剪枝方法、装置及电子设备
CN112580822A (zh) 机器学习模型的对抗训练方法装置、电子设备和介质
CN111708477B (zh) 按键识别方法、装置、设备以及存储介质
CN112506949A (zh) 结构化查询语言查询语句生成方法、装置及存储介质
CN111858880B (zh) 获取查询结果的方法、装置、电子设备和可读存储介质
CN111539224A (zh) 语义理解模型的剪枝方法、装置、电子设备和存储介质
CN111177339A (zh) 对话生成方法、装置、电子设备及存储介质
CN112000330A (zh) 建模参数的配置方法、装置、设备和计算机存储介质
CN112036315A (zh) 字符识别方法、装置、电子设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant