WEKO3
アイテム
{"_buckets": {"deposit": "ff1d71ba-5721-4947-96f2-9cfd7d46e270"}, "_deposit": {"id": "21417", "owners": [], "pid": {"revision_id": 0, "type": "depid", "value": "21417"}, "status": "published"}, "_oai": {"id": "oai:nagoya.repo.nii.ac.jp:00021417", "sets": ["314"]}, "author_link": ["62149", "62150", "62151", "62152", "62153", "62154", "62155", "62156", "62157", "62158"], "item_10_alternative_title_19": {"attribute_name": "その他のタイトル", "attribute_value_mlt": [{"subitem_alternative_title": "Using SAT Solvers for Solving Control-Instruction Layout Problems in Low-Level Assembly Programming for Malbolge", "subitem_alternative_title_language": "en"}]}, "item_10_biblio_info_6": {"attribute_name": "書誌情報", "attribute_value_mlt": [{"bibliographicIssueDates": {"bibliographicIssueDate": "2013-01", "bibliographicIssueDateType": "Issued"}, "bibliographicIssueNumber": "373", "bibliographicPageEnd": "30", "bibliographicPageStart": "25", "bibliographicVolumeNumber": "112", "bibliographic_titles": [{"bibliographic_title": "電子情報通信学会技術研究報告. SS, ソフトウェアサイエンス", "bibliographic_titleLang": "ja"}]}]}, "item_10_description_4": {"attribute_name": "抄録", "attribute_value_mlt": [{"subitem_description": "Malbolgeは最も難解なプログラミング言語として知られている。低級アセンブリ言語の開発によりMalbolgeのループプログラムの作成が可能になったものの、低級アセンブリプログラムでは変数を引数とする命令はその変数宣言の直前に記述しなければならず実行制御が必要不可欠なことと、制御命令には無条件ジャンプとアクセスの度にジャンプとスルーが入れ替わるフリップフロップジャンプしか存在しないことから、低級アセンブリ言語でのプログラミングにも困難が伴う。これまで制御命令の配置設計は手作業により行われており、実行トレーサを利用しているものの、非常に困難であった。本稿では、Malbolgeの低級アセンブリプログラミングにおける制御命令の配置設計にSATソルバを利用した手法を提案することで、この問題の解決を試みる。そのため、制御命令の配置問題を定式化し、その問題のSATエンコーディングを提案する。実験により、提案手法を利用した制御命令配置設計ツールの性能を評価する。 ", "subitem_description_language": "ja", "subitem_description_type": "Abstract"}, {"subitem_description": "Malbolge is known as one of the most esoteric programming languages. Although it became possible to write programs in Malbolge due to the development of the low-level assembly language, we still have a problem that the programming in the low-level assembly language is difficult. This is because for each variable, instructions that take the variable in their arguments are allowed to be placed just above of the variable in the low-level assembly programs, and control-instructions in the low-level assembly language are only unconditional jumps and flip-flop jumps, where the latter alternate jump and no-operations. So far we have to design control structures, i.e., layout of control-instructions, by hand, which is very difficult even if we have an execution tracer for low-level assembly programs. In this paper, to solve this problem, we propose a method to design layout of control-instructions of the low-level assembly language efficiently by using state-of-art SAT solvers. We define a control-instruction layout problem, and propose a SAT encoding for this problem. We also evaluate the performance of control-instruction layout tools based on our method.", "subitem_description_language": "en", "subitem_description_type": "Abstract"}]}, "item_10_description_5": {"attribute_name": "内容記述", "attribute_value_mlt": [{"subitem_description": "IEICE Technical Report;SS2012-50", "subitem_description_language": "en", "subitem_description_type": "Other"}]}, "item_10_identifier_60": {"attribute_name": "URI", "attribute_value_mlt": [{"subitem_identifier_type": "URI", "subitem_identifier_uri": "http://ci.nii.ac.jp/naid/110009728078/"}, {"subitem_identifier_type": "HDL", "subitem_identifier_uri": "http://hdl.handle.net/2237/23561"}]}, "item_10_publisher_32": {"attribute_name": "出版者", "attribute_value_mlt": [{"subitem_publisher": "一般社団法人電子情報通信学会", "subitem_publisher_language": "ja"}]}, "item_10_relation_40": {"attribute_name": "シリーズ", "attribute_value_mlt": [{"subitem_relation_name": [{"subitem_relation_name_text": "IEICE Technical Report;SS2012-50"}]}]}, "item_10_relation_43": {"attribute_name": "関連情報", "attribute_value_mlt": [{"subitem_relation_type": "isVersionOf", "subitem_relation_type_id": {"subitem_relation_type_id_text": "http://ci.nii.ac.jp/naid/110009728078/", "subitem_relation_type_select": "URI"}}]}, "item_10_rights_12": {"attribute_name": "権利", "attribute_value_mlt": [{"subitem_rights": "(c)一般社団法人電子情報通信学会 本文データは学協会の許諾に基づきCiNiiから複製したものである", "subitem_rights_language": "ja"}]}, "item_10_select_15": {"attribute_name": "著者版フラグ", "attribute_value_mlt": [{"subitem_select_item": "publisher"}]}, "item_10_source_id_7": {"attribute_name": "ISSN", "attribute_value_mlt": [{"subitem_source_identifier": "0913-5685", "subitem_source_identifier_type": "PISSN"}]}, "item_1615787544753": {"attribute_name": "出版タイプ", "attribute_value_mlt": [{"subitem_version_resource": "http://purl.org/coar/version/c_970fb48d4fbd8a85", "subitem_version_type": "VoR"}]}, "item_access_right": {"attribute_name": "アクセス権", "attribute_value_mlt": [{"subitem_access_right": "open access", "subitem_access_right_uri": "http://purl.org/coar/access_right/c_abf2"}]}, "item_creator": {"attribute_name": "著者", "attribute_type": "creator", "attribute_value_mlt": [{"creatorNames": [{"creatorName": "安藤, 聡", "creatorNameLang": "ja"}], "nameIdentifiers": [{"nameIdentifier": "62149", "nameIdentifierScheme": "WEKO"}]}, {"creatorNames": [{"creatorName": "酒井, 正彦", "creatorNameLang": "ja"}], "nameIdentifiers": [{"nameIdentifier": "62150", "nameIdentifierScheme": "WEKO"}]}, {"creatorNames": [{"creatorName": "坂部, 俊樹", "creatorNameLang": "ja"}], "nameIdentifiers": [{"nameIdentifier": "62151", "nameIdentifierScheme": "WEKO"}]}, {"creatorNames": [{"creatorName": "草刈, 圭一朗", "creatorNameLang": "ja"}], "nameIdentifiers": [{"nameIdentifier": "62152", "nameIdentifierScheme": "WEKO"}]}, {"creatorNames": [{"creatorName": "西田, 直樹", "creatorNameLang": "ja"}], "nameIdentifiers": [{"nameIdentifier": "62153", "nameIdentifierScheme": "WEKO"}]}, {"creatorNames": [{"creatorName": "ANDO, Satoshi", "creatorNameLang": "en"}], "nameIdentifiers": [{"nameIdentifier": "62154", "nameIdentifierScheme": "WEKO"}]}, {"creatorNames": [{"creatorName": "SAKAI, Masahiko", "creatorNameLang": "en"}], "nameIdentifiers": [{"nameIdentifier": "62155", "nameIdentifierScheme": "WEKO"}]}, {"creatorNames": [{"creatorName": "SAKABE, Toshiki", "creatorNameLang": "en"}], "nameIdentifiers": [{"nameIdentifier": "62156", "nameIdentifierScheme": "WEKO"}]}, {"creatorNames": [{"creatorName": "KUSAKARI, Keiichirou", "creatorNameLang": "en"}], "nameIdentifiers": [{"nameIdentifier": "62157", "nameIdentifierScheme": "WEKO"}]}, {"creatorNames": [{"creatorName": "NISHIDA, Naoki", "creatorNameLang": "en"}], "nameIdentifiers": [{"nameIdentifier": "62158", "nameIdentifierScheme": "WEKO"}]}]}, "item_files": {"attribute_name": "ファイル情報", "attribute_type": "file", "attribute_value_mlt": [{"accessrole": "open_date", "date": [{"dateType": "Available", "dateValue": "2018-02-21"}], "displaytype": "detail", "download_preview_message": "", "file_order": 0, "filename": "110009728078.pdf", "filesize": [{"value": "848.1 kB"}], "format": "application/pdf", "future_date_message": "", "is_thumbnail": false, "licensetype": "license_note", "mimetype": "application/pdf", "size": 848100.0, "url": {"label": "110009728078.pdf", "objectType": "fulltext", "url": "https://nagoya.repo.nii.ac.jp/record/21417/files/110009728078.pdf"}, "version_id": "cb07df75-bb8e-4a6f-ab3a-0b2ccd8a77b6"}]}, "item_keyword": {"attribute_name": "キーワード", "attribute_value_mlt": [{"subitem_subject": "難解プログラミング言語", "subitem_subject_scheme": "Other"}, {"subitem_subject": "Malbolge", "subitem_subject_scheme": "Other"}, {"subitem_subject": "SATソルバ", "subitem_subject_scheme": "Other"}, {"subitem_subject": "制御命令の配置設計", "subitem_subject_scheme": "Other"}, {"subitem_subject": "Esoteric programming language", "subitem_subject_scheme": "Other"}, {"subitem_subject": "SAT solver", "subitem_subject_scheme": "Other"}, {"subitem_subject": "Control−Instruction Layout", "subitem_subject_scheme": "Other"}]}, "item_language": {"attribute_name": "言語", "attribute_value_mlt": [{"subitem_language": "jpn"}]}, "item_resource_type": {"attribute_name": "資源タイプ", "attribute_value_mlt": [{"resourcetype": "journal article", "resourceuri": "http://purl.org/coar/resource_type/c_6501"}]}, "item_title": "Malbolge低級アセンブリプログラミングにおける制御命令の配置設計のためのSATソルバの利用", "item_titles": {"attribute_name": "タイトル", "attribute_value_mlt": [{"subitem_title": "Malbolge低級アセンブリプログラミングにおける制御命令の配置設計のためのSATソルバの利用", "subitem_title_language": "ja"}]}, "item_type_id": "10", "owner": "1", "path": ["314"], "permalink_uri": "http://hdl.handle.net/2237/23561", "pubdate": {"attribute_name": "PubDate", "attribute_value": "2016-02-23"}, "publish_date": "2016-02-23", "publish_status": "0", "recid": "21417", "relation": {}, "relation_version_is_last": true, "title": ["Malbolge低級アセンブリプログラミングにおける制御命令の配置設計のためのSATソルバの利用"], "weko_shared_id": -1}
Malbolge低級アセンブリプログラミングにおける制御命令の配置設計のためのSATソルバの利用
http://hdl.handle.net/2237/23561
http://hdl.handle.net/2237/23561dbbddd7e-f933-47a7-90c2-d02e328f3db8
名前 / ファイル | ライセンス | アクション |
---|---|---|
![]() |
|
Item type | 学術雑誌論文 / Journal Article(1) | |||||
---|---|---|---|---|---|---|
公開日 | 2016-02-23 | |||||
タイトル | ||||||
タイトル | Malbolge低級アセンブリプログラミングにおける制御命令の配置設計のためのSATソルバの利用 | |||||
言語 | ja | |||||
その他のタイトル | ||||||
その他のタイトル | Using SAT Solvers for Solving Control-Instruction Layout Problems in Low-Level Assembly Programming for Malbolge | |||||
言語 | en | |||||
著者 |
安藤, 聡
× 安藤, 聡× 酒井, 正彦× 坂部, 俊樹× 草刈, 圭一朗× 西田, 直樹× ANDO, Satoshi× SAKAI, Masahiko× SAKABE, Toshiki× KUSAKARI, Keiichirou× NISHIDA, Naoki |
|||||
アクセス権 | ||||||
アクセス権 | open access | |||||
アクセス権URI | http://purl.org/coar/access_right/c_abf2 | |||||
権利 | ||||||
言語 | ja | |||||
権利情報 | (c)一般社団法人電子情報通信学会 本文データは学協会の許諾に基づきCiNiiから複製したものである | |||||
キーワード | ||||||
主題Scheme | Other | |||||
主題 | 難解プログラミング言語 | |||||
キーワード | ||||||
主題Scheme | Other | |||||
主題 | Malbolge | |||||
キーワード | ||||||
主題Scheme | Other | |||||
主題 | SATソルバ | |||||
キーワード | ||||||
主題Scheme | Other | |||||
主題 | 制御命令の配置設計 | |||||
キーワード | ||||||
主題Scheme | Other | |||||
主題 | Esoteric programming language | |||||
キーワード | ||||||
主題Scheme | Other | |||||
主題 | SAT solver | |||||
キーワード | ||||||
主題Scheme | Other | |||||
主題 | Control−Instruction Layout | |||||
抄録 | ||||||
内容記述 | Malbolgeは最も難解なプログラミング言語として知られている。低級アセンブリ言語の開発によりMalbolgeのループプログラムの作成が可能になったものの、低級アセンブリプログラムでは変数を引数とする命令はその変数宣言の直前に記述しなければならず実行制御が必要不可欠なことと、制御命令には無条件ジャンプとアクセスの度にジャンプとスルーが入れ替わるフリップフロップジャンプしか存在しないことから、低級アセンブリ言語でのプログラミングにも困難が伴う。これまで制御命令の配置設計は手作業により行われており、実行トレーサを利用しているものの、非常に困難であった。本稿では、Malbolgeの低級アセンブリプログラミングにおける制御命令の配置設計にSATソルバを利用した手法を提案することで、この問題の解決を試みる。そのため、制御命令の配置問題を定式化し、その問題のSATエンコーディングを提案する。実験により、提案手法を利用した制御命令配置設計ツールの性能を評価する。 | |||||
言語 | ja | |||||
内容記述タイプ | Abstract | |||||
抄録 | ||||||
内容記述 | Malbolge is known as one of the most esoteric programming languages. Although it became possible to write programs in Malbolge due to the development of the low-level assembly language, we still have a problem that the programming in the low-level assembly language is difficult. This is because for each variable, instructions that take the variable in their arguments are allowed to be placed just above of the variable in the low-level assembly programs, and control-instructions in the low-level assembly language are only unconditional jumps and flip-flop jumps, where the latter alternate jump and no-operations. So far we have to design control structures, i.e., layout of control-instructions, by hand, which is very difficult even if we have an execution tracer for low-level assembly programs. In this paper, to solve this problem, we propose a method to design layout of control-instructions of the low-level assembly language efficiently by using state-of-art SAT solvers. We define a control-instruction layout problem, and propose a SAT encoding for this problem. We also evaluate the performance of control-instruction layout tools based on our method. | |||||
言語 | en | |||||
内容記述タイプ | Abstract | |||||
内容記述 | ||||||
内容記述 | IEICE Technical Report;SS2012-50 | |||||
言語 | en | |||||
内容記述タイプ | Other | |||||
出版者 | ||||||
言語 | ja | |||||
出版者 | 一般社団法人電子情報通信学会 | |||||
言語 | ||||||
言語 | jpn | |||||
資源タイプ | ||||||
資源タイプresource | http://purl.org/coar/resource_type/c_6501 | |||||
タイプ | journal article | |||||
出版タイプ | ||||||
出版タイプ | VoR | |||||
出版タイプResource | http://purl.org/coar/version/c_970fb48d4fbd8a85 | |||||
関連情報 | ||||||
関連タイプ | isVersionOf | |||||
識別子タイプ | URI | |||||
関連識別子 | http://ci.nii.ac.jp/naid/110009728078/ | |||||
ISSN | ||||||
収録物識別子タイプ | PISSN | |||||
収録物識別子 | 0913-5685 | |||||
書誌情報 |
ja : 電子情報通信学会技術研究報告. SS, ソフトウェアサイエンス 巻 112, 号 373, p. 25-30, 発行日 2013-01 |
|||||
著者版フラグ | ||||||
値 | publisher | |||||
シリーズ | ||||||
関連名称 | IEICE Technical Report;SS2012-50 | |||||
URI | ||||||
識別子 | http://ci.nii.ac.jp/naid/110009728078/ | |||||
識別子タイプ | URI | |||||
URI | ||||||
識別子 | http://hdl.handle.net/2237/23561 | |||||
識別子タイプ | HDL |