{"id":24747,"date":"2014-03-28T10:05:09","date_gmt":"2014-03-28T01:05:09","guid":{"rendered":"http:\/\/www.ospn.jp\/press\/?p=24747"},"modified":"2014-06-24T15:22:31","modified_gmt":"2014-06-24T06:22:31","slug":"no38-useit-oss","status":"publish","type":"post","link":"https:\/\/www.ospn.jp\/press\/20140328no38-useit-oss.html","title":{"rendered":"\u300c\u30aa\u30fc\u30d7\u30f3\u30bd\u30fc\u30b9\u300d\u3092\u4f7f\u3063\u3066\u307f\u3088\u3046 (\u7b2c33\u56de \u30a2\u30bb\u30f3\u30d6\u30e9\u77ed\u6b4c)"},"content":{"rendered":"<p><html><br \/>\n<head><br \/>\n<title>\u30a2\u30bb\u30f3\u30d6\u30e9\u77ed\u6b4c<\/title><br \/>\n<meta http-equiv=\"Content-Type\" content=\"text\/html; charset=EUC-JP\"><\/p>\n<style type=\"text\/css\">\n<!--\npre {\n  padding: 1em;\n  background-color: lightblue;\n  white-space: -moz-pre-wrap; \/* Mozilla *\/\n  white-space: -pre-wrap;     \/* Opera 4-6 *\/\n  white-space: -o-pre-wrap;   \/* Opera 7 *\/\n  white-space: pre-wrap;      \/* CSS3 *\/\n  word-wrap: break-word;      \/* IE 5.5+ *\/\n  overflow: auto;\n  font-size:1em;\n}\n-->\n<\/style>\n<p><\/head><\/p>\n<p><body bgcolor=beige text=brown link=red vlink=black><\/p>\n<p><center><\/p>\n<h1>\u30a2\u30bb\u30f3\u30d6\u30e9\u77ed\u6b4c<\/h1>\n<h2>KOZOS\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u4ee3\u8868<br \/>\u5742\u4e95\u5f18\u4eae(\u3055\u304b\u3044\u30fb\u3072\u308d\u3042\u304d)<\/h2>\n<p><\/center><\/p>\n<h1>\u76ee\u6b21<\/h1>\n<ul compact>\n<li><a href=\"#section_1\">1 \u30a2\u30bb\u30f3\u30d6\u30e9\u77ed\u6b4c\u3068\u306f\u4f55\u304b\uff1f<\/a><\/li>\n<li><a href=\"#section_2\">2 \u30aa\u30fc\u30d7\u30f3\u30bd\u30fc\u30b9\u3067\u3059<\/a><\/li>\n<li><a href=\"#section_3\">3 \u30bb\u30df\u30ca\u30fc\u3084\u30a4\u30d9\u30f3\u30c8\u304c\u884c\u308f\u308c\u3066\u3044\u307e\u3059<\/a><\/li>\n<li><a href=\"#section_4\">4 \u30b3\u30f3\u30c6\u30b9\u30c8\u304c\u884c\u308f\u308c\u3066\u3044\u307e\u3059<\/a><\/li>\n<ul compact>\n<li><a href=\"#subsection_4.1\">4.1 \u6700\u512a\u79c0\u4f5c\u54c1\u300c\u8679\u300d<\/a><\/li>\n<li><a href=\"#subsection_4.2\">4.2 \u512a\u79c0\u4f5c\u54c1\u300c6502\u306e\u6182\u9b31\u300d<\/a><\/li>\n<li><a href=\"#subsection_4.3\">4.3 \u4f5c\u54c1\u300c\u9ec4\u91d1\u5f8b\u306f\u9060\u3044\u300d<\/a><\/li>\n<li><a href=\"#subsection_4.4\">4.4 \u4f5c\u54c1\u300c\u30df\u30b5\u30ab\u3058\u3083\u306a\u3044\u3088\u300d<\/a><\/li>\n<li><a href=\"#subsection_4.5\">4.5 \u4f5c\u54c1\u300c\u30ef\u30d3\u30b5\u30d3\u3068\u66f8\u3053\u3046\u3068\u601d\u3044\u9811\u5f35\u3063\u305f\u30e1\u30e2\u30ea\u4e0d\u8db3\u3067\u30ef\u30d3\u3067\u59a5\u5354\u3059\u300d<\/a><\/li>\n<li><a href=\"#subsection_4.6\">4.6 \u4f5c\u54c1\u300c\u3046\u3069\u3093\u306b\u601d\u3044\u3092\u99b3\u305b\u3066\u300d<\/a><\/li>\n<\/ul>\n<li><a href=\"#section_5\">5 \u4f5c\u54c1\u3092\u5b9f\u884c\u3057\u3066\u307f\u3088\u3046<\/a><\/li>\n<li><a href=\"#section_6\">6 \u30a2\u30bb\u30f3\u30d6\u30e9\u306e\u8aac\u660e<\/a><\/li>\n<ul compact>\n<li><a href=\"#subsection_6.1\">6.1 \u6a5f\u68b0\u8a9e\u30b3\u30fc\u30c9\u3068\u30cb\u30fc\u30e2\u30cb\u30c3\u30af<\/a><\/li>\n<li><a href=\"#subsection_6.2\">6.2 \u547d\u4ee4\u3092\uff13\u3064\u3060\u3051\u899a\u3048\u3066\u307f\u3088\u3046<\/a><\/li>\n<li><a href=\"#subsection_6.3\">6.3 \uff11\u53e5\u76ee<\/a><\/li>\n<li><a href=\"#subsection_6.4\">6.4 \uff12\u53e5\u76ee<\/a><\/li>\n<li><a href=\"#subsection_6.5\">6.5 \uff13\u53e5\u76ee<\/a><\/li>\n<li><a href=\"#subsection_6.6\">6.6 \uff14\u53e5\u76ee<\/a><\/li>\n<li><a href=\"#subsection_6.7\">6.7 \uff15\u53e5\u76ee<\/a><\/li>\n<\/ul>\n<li><a href=\"#section_7\">7 \u4f5c\u54c1\u3092\u9451\u8cde\u3057\u3066\u307f\u3088\u3046<\/a><\/li>\n<li><a href=\"#section_8\">8 \u304a\u308f\u308a\u306b<\/a><\/li>\n<\/ul>\n<p><!--more--><br \/>\n<!--NewPage--><br \/>\n<spacer type=vertical size=70><\/p>\n<h1><a name=\"section_1\">1 \u30a2\u30bb\u30f3\u30d6\u30e9\u77ed\u6b4c\u3068\u306f\u4f55\u304b\uff1f<\/a><\/h1>\n<p><spacer type=vertical size=30><\/p>\n<p>\u300c\u30a2\u30bb\u30f3\u30d6\u30e9\u77ed\u6b4c\u300d\u306f\u4e94\u30fb\u4e03\u30fb\u4e94\u30fb\u4e03\u30fb\u4e03\u306e\u4e09\u5341\u4e00\u30d0\u30a4\u30c8(\u307f\u305d\u3072\u3068\u30d0\u30a4\u30c8)\u304b\u3089\u6210\u308b<br \/>\n\u6a5f\u68b0\u8a9e\u30b3\u30fc\u30c9\u3067\u30d7\u30ed\u30b0\u30e9\u30e0\u3092\u66f8\u3044\u3066\u307f\u308b\u3068\u3044\u3046\u8fd1\u672a\u6765\u306e\u6587\u5316\u7684\u8da3\u5473\u3067\u3042\u308a\uff0c\u8fd1\u5e74\uff0c<br \/>\n\u56fd\u5185\u306e\u30cf\u30c3\u30ab\u30fc\u9593\u3067\u5bc6\u304b\u306a\u30d6\u30fc\u30e0\u304c\u8d77\u304d\u3066\u3044\u307e\u3059\uff0e <\/p>\n<p>\n<a href=\"http:\/\/kozos.jp\/asm-tanka\/\">http:\/\/kozos.jp\/asm-tanka\/<\/a><\/p>\n<pre><code>\r\n\r\n<a name=\"lst_natsuyasumi.tnk.txt\">\u30ea\u30b9\u30c81.1: \u30a2\u30bb\u30f3\u30d6\u30e9\u77ed\u6b4c\u306e\u4f5c\u54c1\u300c\u590f\u4f11\u307f\u300d<\/a>\r\n\r\n6a 00 58 50 40\r\n68 79 61 6d 61 50 40\r\n6a 08 5a 5b 40\r\n68 57 61 6b 61 54 40\r\n59 cd 80 58 58 58 c3\r\n\r\n<\/code><\/pre>\n<p><spacer type=vertical size=70><\/p>\n<h1><a name=\"section_2\">2 \u30aa\u30fc\u30d7\u30f3\u30bd\u30fc\u30b9\u3067\u3059<\/a><\/h1>\n<p><spacer type=vertical size=30><\/p>\n<p>\u4f5c\u54c1\u306e\u5236\u4f5c\u306f\uff0c\u7b46\u8005\u306f\u4e3b\u306bFreeBSD\u4e0a\u3067gcc\u3092\u7528\u3044\u3066\u884c\u3063\u3066\u3044\u307e\u3059\uff0e<br \/>\n\u4ed6\u306b\u3082Z80\u30846502\u3068\u3044\u3063\u305f\u65e7\u6765\u306e\u30de\u30a4\u30b3\u30f3\u3084\uff0cVAX\u306a\u3069\u3067\u306e\u5b9f\u65bd\u4f8b\u3082\u3042\u308a\u307e\u3059\uff0e<br \/>\n\u3053\u308c\u3089\u306e\u305f\u3081\u306b\u306f\u30aa\u30fc\u30d7\u30f3\u30bd\u30fc\u30b9\u306e\u30a2\u30bb\u30f3\u30d6\u30e9\u3084\u30b7\u30df\u30e5\u30ec\u30fc\u30bf\u306a\u3069\u304c\u591a\u304f\u5229\u7528<br \/>\n\u3055\u308c\u3066\u3044\u307e\u3059\uff0e<\/p>\n<p>\n\u307e\u305f\u30a2\u30bb\u30f3\u30d6\u30e9\u77ed\u6b4c\u306f\u6a5f\u68b0\u8a9e\u30b3\u30fc\u30c9\u3068\u30a2\u30bb\u30f3\u30d6\u30e9\u306e\u4f5c\u54c1\u3092\u9451\u8cde\u3059\u308b\u3082\u306e\u306a\u306e\u3067\uff0c<br \/>\n\u5f53\u7136\u306a\u304c\u3089\uff0c\u4f5c\u54c1\u81ea\u4f53\u304c\u30aa\u30fc\u30d7\u30f3\u30bd\u30fc\u30b9\u3067\u3059\uff0e<\/p>\n<p>\n\u3053\u306e\u3088\u3046\u306b\u30a2\u30bb\u30f3\u30d6\u30e9\u77ed\u6b4c\u306f\uff0c\u30aa\u30fc\u30d7\u30f3\u30bd\u30fc\u30b9\u3068\u306e\u89aa\u548c\u6027\u304c\u975e\u5e38\u306b\u9ad8\u3044<br \/>\n\u82b8\u8853\u3068\u306a\u3063\u3066\u3044\u307e\u3059\uff0e<\/p>\n<p><spacer type=vertical size=70><\/p>\n<h1><a name=\"section_3\">3 \u30bb\u30df\u30ca\u30fc\u3084\u30a4\u30d9\u30f3\u30c8\u304c\u884c\u308f\u308c\u3066\u3044\u307e\u3059<\/a><\/h1>\n<p><spacer type=vertical size=30><\/p>\n<p>\u30a2\u30bb\u30f3\u30d6\u30e9\u77ed\u6b4c\u306f\u30aa\u30fc\u30d7\u30f3\u30bd\u30fc\u30b9\u30ab\u30f3\u30d5\u30a1\u30ec\u30f3\u30b92013Tokyo\/Spring\u306e<br \/>\n\u30e9\u30a4\u30c8\u30cb\u30f3\u30b0\u30c8\u30fc\u30af\u3067\u521d\u304a\u62ab\u9732\u76ee\u3055\u308c\u307e\u3057\u305f\uff0e<br \/>\n\u3055\u3089\u306bOSC2013Nagoya\u3067\u521d\u306e\u30bb\u30df\u30ca\u30fc\u304c\u884c\u308f\u308c\u3066\u3044\u307e\u3059\uff0e<\/p>\n<p>\n\u30bb\u30df\u30ca\u30fc\u306f\u305d\u306e\u5f8c\uff0cOSC2013Hokkaido\uff0cOSC2013Tokyo\/Fall\uff0cOSC2014Tokyo\/Spring\u3067\u3082\u5f15\u7d9a\u304d\u884c\u308f\u308c\u307e\u3057\u305f\uff0e\u30bb\u30df\u30ca\u30fc\u4e2d\u3067\u306f\u30a2\u30bb\u30f3\u30d6\u30e9\u77ed\u6b4c\u306e\u7d39\u4ecb\u3068\u8aac\u660e\u304b\u3089\u59cb\u307e\u308a\uff0c<br \/>\n\u77ed\u6b4c\u4f5c\u54c1\u306e\u89e3\u8aac\u3084\u9451\u8cde\u306a\u3069\u304c\u884c\u308f\u308c\u3066\u3044\u307e\u3059\uff0e<\/p>\n<p>(OSC\u3067\u306e\u30a2\u30bb\u30f3\u30d6\u30e9\u77ed\u6b4c\u306e\u767a\u8868\u6b74)<\/p>\n<ul>\n<li>OSC2013Tokyo\/Spring \u30e9\u30a4\u30c8\u30cb\u30f3\u30b0\u30c8\u30fc\u30af<\/li>\n<li>OSC2013Nagoya \u30bb\u30df\u30ca\u30fc\u30fb\u30e9\u30a4\u30c8\u30cb\u30f3\u30b0\u30c8\u30fc\u30af<\/li>\n<li>OSC2013Hokkaido \u30bb\u30df\u30ca\u30fc\u30fb\u30e9\u30a4\u30c8\u30cb\u30f3\u30b0\u30c8\u30fc\u30af (<a href=\"http:\/\/www.ospn.jp\/press\/20131007osc2013-hokkaido-report.html\">\u30ec\u30dd\u30fc\u30c8<\/a>)<\/li>\n<li>OSC2013Tokyo\/Fall \u30bb\u30df\u30ca\u30fc\u30fb\u30e9\u30a4\u30c8\u30cb\u30f3\u30b0\u30c8\u30fc\u30af<\/li>\n<li>OSC2014Tokyo\/Spring \u30bb\u30df\u30ca\u30fc<\/li>\n<\/ul>\n<p>\u307e\u305f\u30a2\u30bb\u30f3\u30d6\u30e9\u77ed\u6b4c\u306fOSC\u306e\u4ed6\u306b\u3082\uff0c<br \/>\n\u69d8\u3005\u306a\u30a4\u30d9\u30f3\u30c8\u3067\u7a4d\u6975\u7684\u306b\u7d39\u4ecb\u304c\u884c\u308f\u308c\u3066\u3044\u307e\u3059\uff0e<\/p>\n<ul>\n<li>2013\/ 3\/29\u00a0<a href=\"http:\/\/atnd.org\/events\/36798\">\u7b2c\uff12\u56deAPASEC+\u7b2c\uff12\u671f\u30b5\u30a4\u30dc\u30a6\u30ba\u30fb\u30e9\u30dc\u30e6\u30fc\u30b9\u5408\u540c\u52c9\u5f37\u4f1a<\/a><br \/>\n\u767a\u8868\u300c\u30a2\u30bb\u30f3\u30d6\u30e9\u77ed\u6b4c\u300d<\/li>\n<li>2013\/ 8\/13\uff5e17\u00a0<a href=\"http:\/\/www.ipa.go.jp\/jinzai\/renkei\/camp2013\/index.html\">\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u30fb\u30ad\u30e3\u30f3\u30d72013<\/a><br \/>\n\u30ad\u30e3\u30f3\u30d7\u5185BoF\u300c\u30a2\u30bb\u30f3\u30d6\u30e9\u77ed\u6b4c \uff5e\u30c7\u30b8\u30bf\u30eb\u306a\u4f98\u3073\u5bc2\u3073\u306e\u4e16\u754c\uff5e\u300d<\/li>\n<li>2013\/10\/5\uff5e6\u00a0<a href=\"http:\/\/2013.seccon.jp\/blog\/2013\/10\/seccon.html\">SECCON2013 \u4fe1\u5dde\u5927\u4f1a<\/a><br \/>\n<a href=\"http:\/\/atnd.org\/events\/44180\">\u524d\u65e5\u52c9\u5f37\u4f1a\u300c\u30a2\u30bb\u30f3\u30d6\u30e9\u77ed\u6b4c \u54c1\u8a55\u4f1a\u300d<\/a><\/li>\n<li>2013\/11\/30\u00a0<a href=\"http:\/\/techlion.jp\/vol15\">TechLION vol.15<\/a><br \/>\n<a href=\"http:\/\/techlion.jp\/archives\/5491\">\u30e9\u30a4\u30c8\u30cb\u30f3\u30b0\u30c8\u30fc\u30af\u300c\u30a2\u30bb\u30f3\u30d6\u30e9\u77ed\u6b4c\u300d<\/a><\/li>\n<li>2014\/ 1\/17\u00a0<a href=\"http:\/\/www.cross-party.com\/\">CROSS2014<\/a><br \/>\n\u30bb\u30df\u30ca\u30fc\u300c\u30a2\u30bb\u30f3\u30d6\u30e9\u77ed\u6b4c\u00d7\u30d0\u30a4\u30ca\u30ea\u304b\u308b\u305f\u300d<\/li>\n<li>2014\/ 1\/20\u00a0<a href=\"http:\/\/atnd.org\/event\/E0022328\">\u4e8c\u3007\u4e00\u56db \u30a2\u30bb\u30f3\u30d6\u30e9\u77ed\u6b4c\u8a60\u307f\u306f\u3058\u3081<\/a><br \/>\n\u66f8\u7c4d\u767a\u520a\u8a18\u5ff5\u30a4\u30d9\u30f3\u30c8\u3068\u3057\u3066\u958b\u50ac<\/li>\n<li>2014\/ 1\/29\u00a0<a href=\"http:\/\/www.jnsa.org\/seminar\/nsf\/2014\/index.html\">Network Security Forum 2014<\/a><br \/>\n\u30d1\u30cd\u30eb\u30c7\u30a3\u30b9\u30ab\u30c3\u30b7\u30e7\u30f3\u300c\u89e6\u5a92\u3068\u3057\u3066\u306e\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u30b3\u30f3\u30c6\u30b9\u30c8 \uff5eSECCON\u306e\u73fe\u5728\u307e\u3067\u306e\u53d6\u7d44\u3068\u3053\u308c\u304b\u3089\u306e\u5c55\u671b\u300d\u5185\u3067\u30a2\u30bb\u30f3\u30d6\u30e9\u77ed\u6b4c\u306b\u3064\u3044\u3066\u7d39\u4ecb<\/li>\n<li>2014\/ 2\/16\u00a0<a href=\"http:\/\/ja.avtokyo.org\/avtokyo2013\/speakers#asmtanka\">AVTOKYO2013.5<\/a><br \/>\n\u767a\u8868\u300c\u308f\u3073\u3055\u3073\u306e\u4e16\u754c\uff5e\u30a2\u30bb\u30f3\u30d6\u30e9\u77ed\u6b4c\u300d<\/li>\n<li>2014\/ 3\/ 1\uff5e2\u00a0<a href=\"http:\/\/2013.seccon.jp\/seccon2013conference.html\">SECCON 2013 \u5168\u56fd\u5927\u4f1a\u30ab\u30f3\u30d5\u30a1\u30ec\u30f3\u30b9<\/a><br \/>\n<a href=\"http:\/\/2013.seccon.jp\/blog\/2014\/03\/seccon2013zenkoku-kekka.html\">\u30ab\u30f3\u30d5\u30a1\u30ec\u30f3\u30b9\u300c\u30a2\u30bb\u30f3\u30d6\u30e9\u77ed\u6b4c \u6700\u512a\u79c0\u8cde \u767a\u8868\u300d<\/a><br \/>\n<a href=\"http:\/\/2013.seccon.jp\/secconnagano-tanka.html\">\u30a2\u30bb\u30f3\u30d6\u30e9\u77ed\u6b4c\u30b3\u30f3\u30c6\u30b9\u30c8<\/a><\/li>\n<\/ul>\n<p>\n<center><br \/>\n<a href=\"http:\/\/www.ospn.jp\/press\/20140328no38-useit-oss.html\/avtokyo\" rel=\"attachment wp-att-24804\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.ospn.jp\/press\/wp-content\/uploads\/2014\/03\/avtokyo.jpg\" alt=\"avtokyo\" width=\"450\" height=\"338\" class=\"alignnone size-full wp-image-24804\" \/><\/a><\/p>\n<p>\n<a name=\"fig_avtokyo\">\u56f33.1: AVTOKYO2013.5\u3067\u306e\u767a\u8868\u306f\u548c\u88c5\u306b\u626e\u3057\u305f\u6b4c\u4eba\u306b\u3088\u308a\u884c\u308f\u308c\u307e\u3057\u305f<\/a><br \/>\n<\/center><\/p>\n<p><spacer type=vertical size=70><\/p>\n<h1><a name=\"section_4\">4 \u30b3\u30f3\u30c6\u30b9\u30c8\u304c\u884c\u308f\u308c\u3066\u3044\u307e\u3059<\/a><\/h1>\n<p><spacer type=vertical size=30><\/p>\n<p>SECCON\u3068\u3044\u3046\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u95a2\u9023\u306e\u30b3\u30f3\u30c6\u30b9\u30c8\u5927\u4f1a\u304c\u3042\u308a\u307e\u3059\uff0e<\/p>\n<p>\n<a href=\"http:\/\/2013.seccon.jp\/\">http:\/\/2013.seccon.jp\/<\/a><\/p>\n<p>\n2012\u5e74\u5ea6\u306f\u4e3b\u306bCTF(Capture The Flag)\u3068\u3044\u3046\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u7af6\u6280\u304c\u884c\u308f\u308c\u307e\u3057\u305f\u304c\uff0c<br \/>\n2013\u5e74\u5ea6\u306f\u305d\u308c\u3068\u4e26\u884c\u3057\u3066\u30a2\u30bb\u30f3\u30d6\u30e9\u304b\u308b\u305f(<a href=\"#fig_asm-karuta\">\u56f34.1<\/a>)\uff0c\u30d0\u30a4\u30ca\u30ea\u304b\u308b\u305f\uff0c<br \/>\nWireshark\u30d1\u30b1\u30c3\u30c8\u30fb\u30b3\u30f3\u30c6\u30b9\u30c8\u306a\u3069\u306e\u69d8\u3005\u306a\u7af6\u6280\u3084\u30b3\u30f3\u30c6\u30b9\u30c8\u304c\u884c\u308f\u308c\u307e\u3057\u305f\uff0e<\/p>\n<p>\n<center><br \/>\n<a href=\"http:\/\/www.ospn.jp\/press\/20140328no38-useit-oss.html\/asm-karuta\" rel=\"attachment wp-att-24803\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.ospn.jp\/press\/wp-content\/uploads\/2014\/03\/asm-karuta.jpg\" alt=\"asm-karuta\" width=\"400\" height=\"300\" class=\"alignnone size-full wp-image-24803\" \/><\/a><\/p>\n<p>\n<a name=\"fig_asm-karuta\">\u56f34.1: \u30a2\u30bb\u30f3\u30d6\u30e9\u304b\u308b\u305f<\/a><br \/>\n<\/center><\/p>\n<p>\n\uff13\u6708\u306b\u306f\u5168\u56fd\u5927\u4f1a\u304c\u3042\u308a\uff0c\u30ab\u30f3\u30d5\u30a1\u30ec\u30f3\u30b9\u3067\u306f\u30a2\u30bb\u30f3\u30d6\u30e9\u77ed\u6b4c\u306e\u30b3\u30f3\u30c6\u30b9\u30c8\u306e<br \/>\n\u6700\u512a\u79c0\u4f5c\u54c1\u306e\u767a\u8868\u304c\u884c\u308f\u308c\u3066\u3044\u307e\u3059\uff0e\u5f53\u65e5\u306f\u53d7\u8cde\u8005\u306e\u767a\u8868\u306b\u52a0\u3048\uff0c<br \/>\n\u548c\u88c5\u306b\u626e\u3057\u305f\u6b4c\u4eba\u306b\u3088\u308b\u767a\u8868\u304c\u884c\u308f\u308c\u307e\u3057\u305f\uff0e<\/p>\n<p>\n\u30a2\u30bb\u30f3\u30d6\u30e9\u77ed\u6b4c\u306e\u30d7\u30e9\u30c3\u30c8\u30db\u30fc\u30e0\u306f\uff30\uff23\u3067\u5e83\u304f\u5229\u7528\u3055\u308c\u3066\u3044\u308bx86\u30a2\u30fc\u30ad\u30c6\u30af\u30c1\u30e3\u306b<br \/>\n\u9650\u308b\u308f\u3051\u3067\u306f\u306a\u3044\u306e\u3067\u3059\u304c\uff0c\u30b3\u30f3\u30c6\u30b9\u30c8\u3067\u306f\u521d\u4ee3\u30d5\u30a1\u30df\u30b3\u30f3\u3084Apple II\u3067\u540d\u3092\u99b3\u305b\u305f6502\uff0c\u5f80\u5e74\u306e\u56fd\u7523\u30d1\u30bd\u30b3\u30f3\u3067\u5229\u7528\u3055\u308c\u4eca\u3067\u3082\u73fe\u5f79\u306eZ80\uff0c\u307e\u305fPC-9801\u3084PC-8001<br \/>\n\u306a\u3069\u306e\u61d0\u304b\u3057\u306e\u30a2\u30fc\u30ad\u30c6\u30af\u30c1\u30e3\u306e\u4f5c\u54c1\u304c\u5fdc\u52df\u3055\u308c\uff0c\u639b\u8ef8\u306b\u306a\u3063\u3066\u5c55\u793a\u3055\u308c\u307e\u3057\u305f\uff0e<\/p>\n<p>\n<center><br \/>\n<a href=\"http:\/\/www.ospn.jp\/press\/20140328no38-useit-oss.html\/seccon2013-zenkoku-tanka-works-1\" rel=\"attachment wp-att-24809\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.ospn.jp\/press\/wp-content\/uploads\/2014\/03\/seccon2013-zenkoku-tanka-works-1.jpg\" alt=\"seccon2013-zenkoku-tanka-works-1\" width=\"400\" height=\"300\" class=\"alignnone size-full wp-image-24809\" \/><\/a><\/p>\n<p>\n<a name=\"fig_seccon2013-zenkoku-tanka-works-1\">\u56f34.2: \u5fdc\u52df\u3055\u308c\u305f\u4f5c\u54c1\u306f\uff0c\uff13\u6708\u306e\u5168\u56fd\u5927\u4f1a\u3067\u639b\u8ef8\u306b\u3057\u3066\u5c55\u793a\u3055\u308c\u307e\u3057\u305f<\/a><br \/>\n<\/center><\/p>\n<p>\n<center><br \/>\n<a name=\"tbl_contest-works\">\u88684.1: \u30a2\u30bb\u30f3\u30d6\u30e9\u77ed\u6b4c\u30b3\u30f3\u30c6\u30b9\u30c8\u306e\u5fdc\u52df\u4f5c\u54c1\u306e\u4e00\u89a7<\/a><br \/>\n<\/p>\n<table border=1>\n<tr>\n<th>\u6b4c\u4eba<\/th>\n<th>\u4f5c\u54c1\u540d<\/th>\n<th>\u30a2\u30fc\u30ad<br \/>\u30c6\u30af\u30c1\u30e3<\/th>\n<th>\u4f5c\u54c1<\/th>\n<\/tr>\n<tr>\n<td>\u5c71\u53e3\u6587\u5f66<\/td>\n<td>\u9ec4\u91d1\u5f8b\u306f\u9060\u3044<\/td>\n<td>x86<\/td>\n<td>\n<pre>\r\n 31 c0 40 89 c3\r\n 93 fe c9 7e 06 01 C3\r\n 89 c0 eb f5 c3\r\n 8b 44 24 08 8b 40 04\r\n 8a 08 83 e9 30 eb e1\r\n<\/pre>\n<\/td>\n<\/tr>\n<tr>\n<td>hirosk<\/td>\n<td>\u30df\u30b5\u30ab\u3058\u3083\u306a\u3044\u3088<\/td>\n<td>6502<\/td>\n<td>\n<pre>\r\n d0 03 c8 98 60\r\n 98 d0 04 c8 ca 50 f4\r\n 88 c8 88 8a 48\r\n 20 04 06 a8 68 aa 8a\r\n ca aa ca aa ca 50 e1\r\n<\/pre>\n<\/td>\n<\/tr>\n<tr>\n<td>\u5927\u576a\u96c4\u5e73<\/td>\n<td>\u8679<\/td>\n<td>x86<\/td>\n<td>\n<pre>\r\n BB 00 A2 8E C3\r\n 93 F8 B1 04 BF 93 F8\r\n D3 EF 83 C7 17\r\n B0 07 FD 04 20 AA 4F\r\n 79 FA B8 00 4C CD 21\r\n<\/pre>\n<\/td>\n<\/tr>\n<tr>\n<td>\u30c6\u30c4\u306e\u6a58<\/td>\n<td>\u30ef\u30d3\u30b5\u30d3\u3068<br \/>\u66f8\u3053\u3046\u3068\u601d\u3044<br \/>\u9811\u5f35\u3063\u305f<br \/>\u30e1\u30e2\u30ea\u4e0d\u8db3\u3067<br \/>\u30ef\u30d3\u3067\u59a5\u5354\u3059<\/td>\n<td>Z80<\/td>\n<td>\n<pre>\r\n 21 00 80 06 06\r\n 11 39 F1 22 50 F3 AF\r\n 21 00 F3 28 07\r\n 13 79 F0 8A 03 03 00\r\n 1A 77 13 23 10 FA C9\r\n<\/pre>\n<\/td>\n<\/tr>\n<tr>\n<td>\u307f\u3080\u3089<\/td>\n<td>\u3046\u3069\u3093\u306b\u601d\u3044\u3092\u99b3\u305b\u3066<\/td>\n<td>MSIL<\/td>\n<td>\n<pre>\r\n 20 4A 46 69 93\r\n 0A 06 15 1E 62 66 5F\r\n 20 00 30 00 00\r\n 58 28 01 00 00 0A 06\r\n 1E 64 0A 06 2D E8 2A\r\n<\/pre>\n<\/td>\n<\/tr>\n<tr>\n<td>\u5b89\u7530\u8c4a<\/td>\n<td>6502 \u306e\u6182\u9b31<\/td>\n<td>6502<\/td>\n<td>\n<pre>\r\n A9 00 48 A9 4D\r\n 48 A9 4F 48 AA A9 54\r\n 48 8A 48 A9 52\r\n 68 68 A9 53 48 BA E8\r\n 8A A0 01 20 1E AB 60\r\n<\/pre>\n<\/td>\n<\/tr>\n<\/table>\n<p><\/center><\/p>\n<p>\n\u4ee5\u4e0b\u306b\uff0c\u5404\u4f5c\u54c1\u306b\u3064\u3044\u3066\u7d39\u4ecb\u3055\u305b\u3066\u3044\u305f\u3060\u304d\u307e\u3059\uff0e<\/p>\n<p>\n\u306a\u304a\u30a2\u30bb\u30f3\u30d6\u30e9\u77ed\u6b4c\u30b3\u30f3\u30c6\u30b9\u30c8\u306e\u5fdc\u52df\u4f5c\u54c1\u306b\u3064\u3044\u3066\u306f\uff0c\u30de\u30a4\u30ca\u30d3\u3088\u308a\u767a\u520a\u4e88\u5b9a\u306e\u66f8\u7c4d<br \/>\n\u300c0\u30681\u306e\u30b3\u30f3\u30d4\u30e5\u30fc\u30bf\u4e16\u754c \uff0d\u30d0\u30a4\u30ca\u30ea\u3067\u904a\u307c\u3046\uff0d\u300d\u306b\u3066\uff0c\u3055\u3089\u306b\u8a73\u3057\u3044\u89e3\u8aac\u3064\u304d\u3067\u7d39\u4ecb\u3055\u305b\u3066\u3044\u305f\u3060\u304f\u3064\u3082\u308a\u3067\u3059\uff0e<\/p>\n<p>\n\u69d8\u3005\u306a\u30e6\u30cb\u30fc\u30af\u306a\u4f5c\u54c1\u306b\u6ea2\u308c\u3066\u3044\u307e\u3059\u306e\u3067\uff0c\u3053\u3061\u3089\u3082\u305c\u3072\u3054\u671f\u5f85\u304f\u3060\u3055\u3044\uff0e<\/p>\n<p><spacer type=vertical size=50><\/p>\n<h2><a name=\"subsection_4.1\">4.1 \u6700\u512a\u79c0\u4f5c\u54c1\u300c\u8679\u300d<\/a><\/h2>\n<p><spacer type=vertical size=25><\/p>\n<p><center><br \/>\n<a href=\"http:\/\/www.ospn.jp\/press\/20140328no38-useit-oss.html\/seccon2013-zenkoku-tanka-best\" rel=\"attachment wp-att-24808\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.ospn.jp\/press\/wp-content\/uploads\/2014\/03\/seccon2013-zenkoku-tanka-best.jpg\" alt=\"seccon2013-zenkoku-tanka-best\" width=\"250\" height=\"333\" class=\"alignnone size-full wp-image-24808\" \/><\/a><\/p>\n<p>\n<a name=\"fig_seccon2013-zenkoku-tanka-best\">\u56f34.3: \u6700\u512a\u79c0\u4f5c\u54c1\u300c\u8679\u300d<\/a><br \/>\n<\/center><\/p>\n<p>\n<a href=\"#fig_seccon2013-zenkoku-tanka-best\">\u56f34.3<\/a>\u306f\u6700\u512a\u79c0\u8cde\u306b\u8f1d\u3044\u305f\uff0c\u5927\u576a\u96c4\u5e73\u3055\u3093\u306b\u3088\u308b\u4f5c\u54c1\u300c\u8679\u300d\u3067\u3059\uff0e<\/p>\n<ul>\n<li>\u6b4c\u4eba\uff1a\u5927\u576a\u96c4\u5e73\n<li>\u4f5c\u54c1\u306e\u30c6\u30fc\u30de\uff1a<br \/>\n<table border=1>\n<tr>\n<td>\n\u5b9f\u884c\u3059\u308b\u3068\u30c6\u30ad\u30b9\u30c8\u306e\u30a2\u30c8\u30ea\u30d3\u30e5\u30fc\u30c8\u30a8\u30ea\u30a2\u3092\u66f8\u304d\u63db\u3048\u753b\u9762\u3044\u3063\u3071\u3044\u306b7\u8272\u3067\u8679\u3092\u8868\u73fe\u3057\u307e\u3059\uff0e\u753b\u9762\u3044\u3063\u3071\u3044\u306b\u8679\u3092\u8868\u73fe\u3057\u3064\u3064\uff12\u53e5\u76ee\u306e\uff11\u301c\uff12\u30d0\u30a4\u30c8\u76ee\u53ca\u3073\uff16\u301c\uff17\u30d0\u30a4\u30c8\u76ee\u304cSHIFT-JIS\u3067\u300c\u8679\u300d\uff0893F8\uff09\u3068\u306a\u3063\u3066\u304a\u308a\uff0c\u4e3b\u8679\u3068\u526f\u8679\u3092\u8868\u73fe\u3057\u3066\u3044\u307e\u3059\uff0e\u6700\u5f8c\u306f\u30b7\u30b9\u30c6\u30e0\u30b3\u30fc\u30eb\u3067\u304d\u308c\u3044\u306b\u7d42\u4e86\u3057\uff0c\u96e8\u4e0a\u304c\u308a\u306b\u73fe\u308c\u308b\u8679\u306e\u723d\u3084\u304b\u3055\u3092\u8868\u73fe\u3057\u3066\u3044\u307e\u3059\uff0e\n<\/td>\n<\/tr>\n<\/table>\n<\/ul>\n<p>\n(\u4f5c\u54c1\u306e\u7dcf\u8a55)<\/p>\n<table border=1>\n<tr>\n<td>\nMS-DOS\/PC-9801(x86)\u306e\u4f5c\u54c1\u3067\u3059\uff0e\u30c6\u30ad\u30b9\u30c8VRAM\u306b\u8272\u5c5e\u6027(\u4e0a\u4f4d\uff13\u30d3\u30c3\u30c8)\u3092\u5909\u5316\u3055\u305b\u306a\u304c\u3089\u30b9\u30c8\u30ea\u30f3\u30b0\u547d\u4ee4\u3067\u66f8\u304d\u8fbc\u3080\u3053\u3068\u3067\uff0c\u30ab\u30e9\u30fc\u30d0\u30fc\u72b6\u306e\u8679\u3092\u751f\u6210\u3057\u3066\u3044\u307e\u3059\uff0e\u5076\u6570\u4f4d\u7f6e\u306b\u66f8\u304d\u8fbc\u3080\u305f\u3081\uff0c\u30b9\u30c8\u30ea\u30f3\u30b0\u547d\u4ee4\u3067\u6e1b\u7b97\u3055\u308c\u308b\u3053\u3068\u306b\u52a0\u3048DEC\u547d\u4ee4\u304c\u8ffd\u52a0\u3055\u308c\u3066\u3044\u307e\u3059\uff0e<br \/>\n<br \/>\n\u30eb\u30fc\u30d7\u56de\u6570\u3092\u6f22\u5b57\u30b3\u30fc\u30c9\u304b\u3089\u6f14\u7b97\u306b\u3088\u3063\u3066\u751f\u6210\u3055\u308c\u3066\u304a\u308a\uff0c\u300c\u8679\u300d\u3068\u3044\u3046\u6587\u5b57\u306e\u57cb\u3081\u8fbc\u307f\u306e\u305f\u3081\uff12\u91cd\u306b\u306a\u3063\u305f\u8679\u304c\u8868\u73fe\u3055\u308c\u3066\u3044\u308b\u3053\u3068\u306b\u306f\uff0c\u4f5c\u8005\u306e\u5f37\u3044\u3053\u3060\u308f\u308a\u304c\u611f\u3058\u3089\u308c\u307e\u3059\uff0e\u307e\u305f\u30c0\u30df\u30fc\u306exchg\u547d\u4ee4\u3068clc\u547d\u4ee4\u306b\u3088\u308a\u3055\u3089\u306b\u300c\u8679\u300d\u306e\uff11\u6587\u5b57\u3092\u7f6e\u304f\u3053\u3068\u3067\uff0c\u4e3b\u8679\u3068\u526f\u8679\u3092\u8868\u73fe\u3057\u3066\u3044\u308b\u5de5\u592b\u3082\u898b\u3089\u308c\u307e\u3059\uff0e\u6700\u5f8c\u304c\u30b3\u30fc\u30c9\u30bc\u30ed\u3067\u7d42\u4e86\u3059\u308b\u3053\u3068\u3082\uff0c\u96e8\u4e0a\u304c\u308a\u306e\u96f2\u3072\u3068\u3064\u7121\u3044\u9752\u7a7a\u304c\u8868\u73fe\u3055\u308c\u3066\u3044\u308b\u3088\u3046\u3067\u6674\u308c\u3084\u304b\u3067\u3059\uff0e\n<\/td>\n<\/tr>\n<\/table>\n<p>\n<center><br \/>\n<a href=\"http:\/\/www.ospn.jp\/press\/20140328no38-useit-oss.html\/rainbow\" rel=\"attachment wp-att-24807\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.ospn.jp\/press\/wp-content\/uploads\/2014\/03\/rainbow.png\" alt=\"rainbow\" width=\"450\" height=\"281\" class=\"alignnone size-full wp-image-24807\" \/><\/a><\/p>\n<p>\n<a name=\"fig_rainbow\">\u56f34.4: \u300c\u8679\u300d\u306e\u5b9f\u884c\u753b\u9762<\/a><br \/>\n<\/center><\/p>\n<pre><code>\r\n\r\n<a name=\"lst_rainbow.asm.txt\">\u30ea\u30b9\u30c84.1: \u300c\u8679\u300d\u306e\u30a2\u30bb\u30f3\u30d6\u30e9\u30fb\u30ea\u30b9\u30c8<\/a>\r\n\r\nBB 00 A2        mov     BX,0A200h       \r\n8E C3           mov     ES,BX           \r\n                                        \r\n93              xchg    AX,BX           \r\nF8              clc                     \r\nB1 04           mov     cl,4            \r\nBF 93 F8        mov     DI,0F893h       \r\n                                        \r\nD3 EF           shr     di,cl   ;F893 -&gt; 0F89\r\n83 C7 17        add     di,17h  ;0F89 -&gt; 0FA0 (80*25*2)\r\n                                        \r\nB0 07           mov     AL,7            \r\nFD              std                     \r\n04 20   Loop1:  add     AL,020h         \r\nAA              stosb                   \r\n4F              dec     DI              \r\n                                        \r\n79 FA           jns     Loop1           \r\nB8 00 4C        mov     AX,4C00h; AH=4Ch:\u7d42\u4e86, AL=DOS\u3078\u306e\u623b\u308a\u5024\u3002\r\nCD 21           int     21h     ; DOS\u3078\u623b\u308b\r\n\r\n<\/code><\/pre>\n<p><spacer type=vertical size=50><\/p>\n<h2><a name=\"subsection_4.2\">4.2 \u512a\u79c0\u4f5c\u54c1\u300c6502\u306e\u6182\u9b31\u300d<\/a><\/h2>\n<p><spacer type=vertical size=25><\/p>\n<ul>\n<li>\u6b4c\u4eba\uff1a\u5b89\u7530\u8c4a\n<li>\u4f5c\u54c1\u306e\u30c6\u30fc\u30de\uff1a<br \/>\n<table border=1>\n<tr>\n<td>\n\u3053\u308c\u306f 6502 \u306b\u81ea\u5206\u306e\u30e1\u30fc\u30ab\u30fc\u540d\u3092\u51fa\u529b\u3055\u305b\u308b\u30d7\u30ed\u30b0\u30e9\u30e0\u3067\u3059\uff0e<br \/>\nCommodore 64 \u4e0a\u3067\u5b9f\u884c\u3059\u308b\u3068 SOM \u3068\u51fa\u529b\u3055\u308c\u307e\u3059\uff0e<br \/>\n\uff08\u5de6\u53f3\u9006\u9806\u3067 MOS technology \u793e\u306e MOS \u3068\u306a\u308b\uff09<br \/>\n<br \/>\n6502 \u306f\u4f59\u308a\u306b\u3082\u591a\u304f\u306e\u4eba\u304b\u3089 MOTOROLA \u88fd\u3060\u3068\u52d8\u9055\u3044\u3055\u308c\u7d9a\u3051\uff0c\u3064\u3044\u306b\u6700\u8fd1\u3067\u306f\u81ea\u5206\u3067\u3082\u6df7\u4e71\u3057\u306f\u3058\u3081\u307e\u3057\u305f\uff0e<br \/>\n<br \/>\n\u4eca\u65e5\uff0c\u4e45\u3005\u306b\u30e1\u30fc\u30ab\u30fc\u540d\u3092\u5c0b\u306d\u3089\u308c\u3066\uff0c\u3064\u3044\u306b\u81ea\u5206\u3067\u3082\u300c\u3082\u3068\u308d\u30fc\u30fb\u30fb\u30fb\u300d\u3068\u53e3\u8d70\u3063\u3066\u3057\u307e\u3044\u307e\u3059\uff0e\uff08\u3053\u3053\u307e\u3067\u4e0a\u306e\u53e5\uff09<br \/>\n<br \/>\n\u3057\u304b\u3057\u305d\u306e\u9014\u4e2d\uff0c\u300c\u3042\u3063\u300d\u3068\u6c17\u304c\u3064\u3044\u3066\u614c\u3066\u3066\u30b9\u30bf\u30c3\u30af\u304b\u3089\u4f59\u8a08\u306aT\u3068O\u3092\u56de\u53ce\u3057\u3066\uff0c\u3081\u3067\u305f\u304f S \u3092\u5165\u308c\u3066\u51fa\u529b\u3059\u308b\u3053\u3068\u306b\u6210\u529f\u3057\u307e\u3057\u305f\uff0e\uff08\u4e0b\u306e\u53e5\uff09<br \/>\n<br \/>\n\u4e0a\u306e\u53e5\u3068\u4e0b\u306e\u53e5\u3067\u304d\u308c\u3044\u306b\u51e6\u7406\u304c\u5206\u304b\u308c\uff0c\u4e0a\u306e\u53e5\u306e\u6700\u5f8c\u306b\u300c\u3042\u30fc\u300d\u3068 R \u3092\u9014\u4e2d\u307e\u3067\u8aad\u307f\u8fbc\u3093\u3060\u3068\u3053\u308d\u3067\u30cf\u30c3\u3068\u6211\u306b\u8fd4\u3063\u3066\u614c\u3066\u3066 Pull Stack \u3092\u9023\u767a\u3059\u308b\u3068\u3053\u308d\u306b6502\u306e\u75b2\u308c\u304c\u8aad\u307f\u53d6\u308c\u307e\u3059\uff0e<br \/>\n<br \/>\n\u672c\u6765OUTSTR\u30eb\u30fc\u30c1\u30f3\u306f\u30b9\u30bf\u30c3\u30af\u306b\u9006\u9806\u306b\u6587\u5b57\u5217\u3092\u7a4d\u307e\u306a\u3051\u308c\u3070\u306a\u3089\u306a\u3044\u3068\u3053\u308d\u3092\u982d\u304b\u3089\u7a4d\u3093\u3067\u3057\u307e\u3063\u305f\u306e\u306f\u6c17\u306e\u65e9\u3044 6502 \u306e\u3054\u611b\u656c\uff0c\u3068\u3044\u3046\u3053\u3068\u3067\uff0e\n<\/td>\n<\/tr>\n<\/table>\n<\/ul>\n<p>\n(\u4f5c\u54c1\u306e\u7dcf\u8a55)<\/p>\n<table border=1>\n<tr>\n<td>\n\u78ba\u304b\u306b\u8aa4\u89e3\u306e\u591a\u30446502\u3068MOS\u30c6\u30af\u30ce\u30ed\u30b8\u30fc\u3067\u3059\u304c\uff0c6502\u3067\u52d5\u4f5c\u3057\u3066\u3044\u308bCommodore 64\u81ea\u8eab\u304c\u4f55\u3082\u8003\u3048\u305a\u306b\u300cMOTOR&#8230;\u300d\u3068\u8a00\u3044\u304b\u3051\u3066\uff0c\u614c\u3066\u3066\u8a00\u3044\u76f4\u3059\u70b9\u306b\u306f\u6d12\u843d\u304c\u5229\u3044\u3066\u304a\u308a\uff0c\u5168\u4f53\u7684\u306b\u30b3\u30df\u30ab\u30eb\u306a\u4f5c\u54c1\u306b\u4ed5\u4e0a\u304c\u3063\u3066\u3044\u307e\u3059\uff0e\uff12\u56de\u4f7f\u308f\u308c\u308b\u300cO\u300d\u3092\u4fdd\u5b58\u307e\u3067\u3057\u3066\u3044\u308b\u70b9\u3082\uff0c\u81ea\u4fe1\u6e80\u3005\u3076\u308a\u3068\uff0c\u81ea\u4fe1\u6e80\u3005\u306b\u9593\u9055\u3048\u3066\u3044\u308b\u69d8\u5b50\u304c\u898b\u3066\u3068\u308c\u3066\u611b\u656c\u304c\u3042\u308a\u307e\u3059\uff0e<br \/>\n<br \/>\n\u3064\u3044\u3067\u306b\u300cMOTOROLA\u300d\u3067\u306a\u304f\uff0c\u3053\u308c\u3082\u9593\u9055\u3044\u306e\u591a\u3044\u300cMOTOLORA\u300d\u3068\u8a00\u3044\u304b\u3051\u308b\u3088\u3046\u306a\u3046\u3063\u304b\u308a\u3076\u308a\u3082\u3042\u308b\u3068\u306a\u304a\u4f5c\u54c1\u304c\u6620\u3048\u305f\u304b\u3082\u3057\u308c\u307e\u305b\u3093\u306d\uff0e(6502\u306b\u3068\u3063\u3066\u306f\u30e2\u30c8\u30ed\u30fc\u30e9\u306f\u4ed6\u30e1\u30fc\u30ab\u30fc\u306a\u306e\u3067\uff0c\u9593\u9055\u3048\u3066\u3057\u307e\u3046\u306e\u306f\u3044\u305f\u3057\u304b\u305f\u306a\u3044\u3053\u3068\u304b\u3068\u601d\u3044\u307e\u3059)<br \/>\n<br \/>\n\u30b9\u30bf\u30c3\u30af\u306b\u7a4d\u3080\u9806\u756a\u306e\u90fd\u5408\u3067\u6587\u5b57\u5217\u304c\u9006\u9806\u306b\u51fa\u3066\u3057\u307e\u3046\u70b9\u3082\uff0c\u304a\u3063\u3061\u3087\u3053\u3061\u3087\u3044\u306e\u5c11\u5e74\u306e\u3088\u3046\u306a6502\u306e\u30a4\u30e1\u30fc\u30b8\u304c\u3046\u307e\u304f\u8868\u73fe\u3055\u308c\u3066\u3044\u308b\u3088\u3046\u3067\u597d\u611f\u304c\u6301\u3066\u307e\u3059\uff0e\n<\/td>\n<\/tr>\n<\/table>\n<p><\/p>\n<pre><code>\r\n\r\n<a name=\"lst_6502.asm.txt\">\u30ea\u30b9\u30c84.2: \u300c6502\u306e\u6182\u9b31\u300d\u306e\u30a2\u30bb\u30f3\u30d6\u30e9\u30fb\u30ea\u30b9\u30c8<\/a>\r\n\r\nA9 00           LDA     #$00    ;  NULL \r\n48              PHA             ;  Push \r\nA9 4D           LDA     #$4D    ;  Load 'M'\r\n                                        \r\n48              PHA             ;  Push \r\nA9 4F           LDA     #$4F    ;  Load 'O'\r\n48              PHA             ;  Push \r\nAA              TAX             ;  A -&gt; X\r\nA9 54           LDA     #$54    ;  Load 'T'\r\n                                        \r\n48              PHA             ;  Push \r\n8A              TXA             ;  X -&gt; A (\u2018O\u2019)\r\n48              PHA             ;  Push \r\nA9 52           LDA     #$52    ;  Load 'R'\r\n                                        \r\n68              PLA             ;  Pull \r\n68              PLA             ;  Pull \r\nA9 53           LDA     #$53    ;  Load 'S'\r\n48              PHA             ;  Push \r\nBA              TSX             ;  SP -&gt; X\r\nE8              INX             ;  INC X\r\n                                        \r\n8A              TXA             ;  X -&gt; A\r\nA0 01           LDY     #$01    ;  1 -&gt; Y\r\n20 1E AB        JSR     $AB1E   ;  OUSTR\r\n60              RTS             ;  return\r\n\r\n<\/code><\/pre>\n<p><spacer type=vertical size=50><\/p>\n<h2><a name=\"subsection_4.3\">4.3 \u4f5c\u54c1\u300c\u9ec4\u91d1\u5f8b\u306f\u9060\u3044\u300d<\/a><\/h2>\n<p><spacer type=vertical size=25><\/p>\n<ul>\n<li>\u6b4c\u4eba\uff1a\u5c71\u53e3\u6587\u5f66\n<li>\u4f5c\u54c1\u306e\u30c6\u30fc\u30de\uff1a<br \/>\n<table border=1>\n<tr>\n<td>\n\u4e0a\u306e\u53e5\u304c\u30d5\u30a3\u30dc\u30ca\u30c3\u30c1\u6570\u3092\u8a08\u7b97\u3059\u308b\u30b5\u30d6\u30eb\u30fc\u30c1\u30f3\u3001\u4e0b\u306e\u53e5\u304c main \u3067\u3059\u3002<br \/>\n<br \/>\n\u3053\u306e\u3088\u3046\u306b\u4e0a\u306e\u53e5\u3068\u4e0b\u306e\u53e5\u306e\u5f79\u5272\u3092\u5206\u3051\u3066\u8a60\u3081\u3070\u3001\u9023\u6b4c\u3082\u3067\u304d\u305f\u308a\u3057\u3066&#8230;<br \/>\n<br \/>\n\u4e0a\u306e\u53e5\u306e\u3046\u3061\u3001\u521d\u53e5\u3067\u521d\u671f\u5316\u3001\u4e8c\u53e5\u3068\u4e09\u53e5\u3067\u8a08\u7b97\u3092\u3057\u3066\u3044\u307e\u3059\u3002<br \/>\n<br \/>\nmain \u3067\u306f\u30b3\u30de\u30f3\u30c9\u30e9\u30a4\u30f3\u304b\u3089\u4e00\u6841\u306e\u6570\u5024\u3092\u8aad\u3093\u3067\u3001\u305d\u306e\u30d5\u30a3\u30dc\u30ca\u30c3\u30c1\u6570\u3092\u7d42\u4e86\u30b3\u30fc\u30c9\u306b\u8fd4\u3057\u307e\u3059\u3002\u3068\u306f\u8a00\u3063\u3066\u3082 fib \u306e\u8fd4\u623b\u5024\u304c %eax \u306b\u5165\u3063\u3066\u5e30\u3063\u3066\u304f\u308b\u306e\u3067\u3001main \u304b\u3089\u306f\u305f\u3060\u5e30\u308b\u3060\u3051\u3001call &#8211; ret \u3092 jmp \u306b\u3057\u3066\u3044\u307e\u3059\u3002<br \/>\n<br \/>\n\u306a\u304a\u3001\u4e0a\u306e\u53e5\u306e\u672b\u5c3e\u3067\u97fb\u3092\u8e0f\u3093\u3067\u307f\u307e\u3057\u305f\u3002<br \/>\n<br \/>\nUbuntu \u3067\u306e\u52d5\u4f5c\u3092\u78ba\u8a8d\u3057\u3066\u3044\u307e\u3059\u304c\u3001\u4ed6\u306e UNIX \u3067\u3082\u52d5\u304d\u305d\u3046\u3067\u3059\u3002<br \/>\n<br \/>\n\u30b3\u30de\u30f3\u30c9\u30e9\u30a4\u30f3\u306e\u4e00\u6587\u5b57\u3067\u6570\u5024\u3092\u8868\u3057\u3066\u3044\u307e\u3059\u304c\u30a2\u30b9\u30ad\u30fc\u30b3\u30fc\u30c9\u304b\u3089\u5f15\u304d\u7b97\u3057\u3066\u3044\u308b\u3060\u3051\u306a\u306e\u3067\u300110 \u306f : 11 \u306f ; 12 \u306f < \u3092\u5165\u308c\u308c\u3070\u3088\u3044\u3053\u3068\u306b\u306a\u308a\u307e\u3059\u3002\n<br \/>\n\u3057\u304b\u3057\u3001\u7d42\u4e86\u30b3\u30fc\u30c9\u306f 255 \u307e\u3067\u306a\u306e\u3067\u300113 \u4ee5\u4e0a\u306e\u5165\u529b\u306b\u5bfe\u3057\u3066\u306f\u4e0b\u4f4d 8bit \u304c\u51fa\u3066\u304d\u307e\u3059&#8230;<br \/>\n<br \/>\n\u30d5\u30a3\u30dc\u30ca\u30c3\u30c1\u6570\u5217\u306e\u96a3\u308a\u5408\u3046\u4e8c\u9805\u306f\u6bd4\u3092\u53d6\u308b\u3068\u9ec4\u91d1\u5f8b\u306b\u53ce\u675f\u3057\u307e\u3059\u304c\u30015\u6841\u304f\u3089\u3044\u307e\u3067\u3057\u304b\u8fd1\u3065\u3051\u307e\u305b\u3093\u3067\u3057\u305f\u3002^_^;\n<\/td>\n<\/tr>\n<\/table>\n<\/ul>\n<p>\n(\u4f5c\u54c1\u306e\u7dcf\u8a55)<\/p>\n<table border=1>\n<tr>\n<td>\nLinux\/x86\u306e\u4f5c\u54c1\u3067\u3059\uff0e\u51e6\u7406\u306e\u5185\u5bb9\u3092\u53e5\u5206\u3051\u3057\u3066\u304d\u308c\u3044\u306b\uff15\uff17\uff15\uff17\uff17\u306b\u53ce\u3081\u3066\u3044\u308b\u70b9\uff0cmain()\u95a2\u6570\u3092\u4e0b\u306e\u53e5\u306b\u305d\u306e\u307e\u307e\u542b\u3081\u3066\u3044\u308b\u70b9\u306f\u898b\u4e8b\u3067\u3059\uff0e\u3055\u3089\u306b\u7570\u306a\u308b\u547d\u4ee4\u306b\u3088\u308b\u62bc\u97fb\u304c\u884c\u308f\u308c\u3066\u304a\u308a\uff0c\u5168\u4f53\u7684\u306b\u975e\u5e38\u306b\u5b8c\u6210\u5ea6\u306e\u9ad8\u3044\u4f5c\u54c1\u3067\u3059\uff0e<br \/>\n<br \/>\n\u30d5\u30a3\u30dc\u30ca\u30c3\u30c1\u6570\u306e\u8a08\u7b97\u306bxchg\u547d\u4ee4\u3092\u7528\u3044\u3066\u3044\u308b\u70b9\uff0c\u95a2\u6570\u672b\u5c3e\u3067\u306e\u95a2\u6570\u30b3\u30fc\u30eb\u3092\u30b8\u30e3\u30f3\u30d7\u547d\u4ee4\u3067\u4ee3\u7528\u3057\u3066\u3044\u308b\u70b9\u3082\uff0c\u547d\u4ee4\u524a\u6e1b\u306e\u52b9\u679c\u3092\u751f\u3093\u3067\u3044\u3066\u6d41\u9e97\u3067\u3059\uff0e\n<\/td>\n<\/tr>\n<\/table>\n<p><\/p>\n<pre><code>\r\n\r\n<a name=\"lst_fibonacci.asm.txt\">\u30ea\u30b9\u30c84.3: \u300c\u9ec4\u91d1\u5f8b\u306f\u9060\u3044\u300d\u306e\u30a2\u30bb\u30f3\u30d6\u30e9\u30fb\u30ea\u30b9\u30c8<\/a>\r\n\r\n31 c0 40 89 c3          fib:    clr %eax\r\n                                inc %eax\r\n                                mov %eax,%ebx\r\n                                        \r\n93 fe c9 7e 06 01 C3    loop:   xchg %eax,%ebx\r\n                                decb %cl\r\n                                jle end \r\n                                add %eax,%ebx\r\n                                        \r\n89 c0 eb f5 c3                  mov %eax,%eax\r\n                                jmp loop\r\n                        end:    ret     \r\n                                        \r\n8b 44 24 08 8b 40 04    main:   mov 8(%esp),%eax\r\n                                mov 4(%eax),%eax\r\n                                        \r\n8a 08 83 e9 30 eb e1            movb 0(%eax),%cl\r\n                                sub $48,%ecx\r\n                                jmp fib \r\n\r\n<\/code><\/pre>\n<p><spacer type=vertical size=50><\/p>\n<h2><a name=\"subsection_4.4\">4.4 \u4f5c\u54c1\u300c\u30df\u30b5\u30ab\u3058\u3083\u306a\u3044\u3088\u300d<\/a><\/h2>\n<p><spacer type=vertical size=25><\/p>\n<ul>\n<li>\u6b4c\u4eba\uff1ahirosk\n<li>\u4f5c\u54c1\u306e\u30c6\u30fc\u30de\uff1a<br \/>\n<table border=1>\n<tr>\n<td>\n\u30a2\u30c3\u30ab\u30fc\u30de\u30f3\u95a2\u6570A(m,n)\u3092\u8a08\u7b97\u3057\u307e\u3059\uff0e\u5b9f\u884c\u6642\u9593\u3082\u6bd4\u8f03\u7684\u9577\u304f\uff0c\u672b\u5c3e\u518d\u5e30\u304a\u3088\u3073\u672b\u5c3e\u518d\u5e30\u3067\u306f\u9664\u53bb\u3067\u304d\u306a\u3044\u3082\u306e\u306f\u666e\u901a\u306e\u518d\u5e30\u547c\u3073\u51fa\u3057\u3082\u884c\u3063\u3066\u304a\u308a\uff0c\u8907\u96d1\u306a\u52d5\u4f5c\u3092\u3057\u307e\u3059\uff0e<br \/>\n<br \/>\n\u4f5c\u54c1\u540d\u306f\u65e5\u672c\u53e4\u6765\u3088\u308a\u306e\u840c\u3048\u6587\u5316\u3092\u5927\u5207\u306b\u3057\u305f\u3044\u306e\u3067\u5c11\u3057\u840c\u3048\u305f\u611f\u3058\u3067\u4ed8\u3051\u307e\u3057\u305f\uff0e3\u53e5\uff0c5\u53e5\u3067\u97fb\u3082\u8e0f\u3093\u3067\u3044\u307e\u3059\uff0e<br \/>\n<br \/>\nm\u3092X\u30ec\u30b8\u30b9\u30bf\uff0cn\u3092Y\u30ec\u30b8\u30b9\u30bf\u306b\u3044\u308c\uff0cJSR\u547d\u4ee4\u3067L0\u3092\u30b3\u30fc\u30eb\u3059\u308b\u3068A\u30ec\u30b8\u30b9\u30bf\u306b\u7b54\u3048\u304c\u5165\u308a\u307e\u3059\uff0e\u305f\u3060\u3057\uff0c\u547c\u3073\u51fa\u3059\u3068\u304d\u306b\u306fY\u30ec\u30b8\u30b9\u30bf\uff0cX\u30ec\u30b8\u30b9\u30bf\u306e\u9806\u306b\u8a2d\u5b9a\u3057\u3066\u304f\u3060\u3055\u3044\uff0e<br \/>\n<br \/>\nhttp:\/\/skilldrick.github.io\/easy6502\/ \u3067\u30a8\u30df\u30e5\u30ec\u30fc\u30c8\u304c\u53ef\u80fd\u3067\u3059\uff0e<br \/>\n\u4e0b\u8a18\u306e\u30b3\u30fc\u30c9\u3092\u5165\u529b\u3057\u3066\u300cAssemble\u300d\u300cRun\u300d\u3068\u3059\u308c\u3070\uff0cA\u30ec\u30b8\u30b9\u30bf\u306b\u7d50\u679c\u304c\u8fd4\u3055\u308c\u307e\u3059\uff0e\u30a2\u30c3\u30ab\u30fc\u30de\u30f3\u95a2\u6570\u306a\u306e\u3067A\u306b\u7d50\u679c\u304c\u5165\u308b\u3068\u3053\u308d\u306b\u3082\u3053\u3060\u308f\u308a\u307e\u3057\u305f\uff0eA(3,3\uff09\u307e\u3067\u306f\u7d50\u679c\u304c\u6c42\u307e\u308a\u307e\u3059\uff0e\u305d\u308c\u4ee5\u4e0a\u306f\u30b9\u30bf\u30c3\u30af\u304c\u8db3\u308a\u307e\u305b\u3093\uff0e\n<\/td>\n<\/tr>\n<\/table>\n<\/ul>\n<p>\n(\u4f5c\u54c1\u306e\u7dcf\u8a55)<\/p>\n<table border=1>\n<tr>\n<td>\n6502\u306e\uff11\u30d0\u30a4\u30c8\u547d\u4ee4\u304c\u5f37\u529b\u306b\u6d3b\u304b\u3055\u308c\u3066\u3044\u308b\u4f5c\u54c1\u3067\u3059\uff0e<br \/>\n\u30a2\u30c3\u30ab\u30fc\u30de\u30f3\u95a2\u6570\u306f\uff11\u306e\u52a0\u6e1b\u7b97\u304c\u591a\u3044\u305f\u3081\u30a4\u30f3\u30af\u30ea\u30e1\u30f3\u30c8\uff0f\u30c7\u30af\u30ea\u30e1\u30f3\u30c8\u547d\u4ee4\u3092<br \/>\n\u52b9\u679c\u7684\u306b\u5229\u7528\u53ef\u80fd\u3067\uff0c\u30a2\u30bb\u30f3\u30d6\u30e9\u77ed\u6b4c\u306b\u975e\u5e38\u306b\u5411\u3044\u305f\u51e6\u7406\u3067\u3042\u308b\u3053\u3068\u3092\u8a8d\u8b58\u3055\u305b<br \/>\n\u3089\u308c\u307e\u3059\uff0e<br \/>\n<br \/>\n\u69d8\u3005\u306a\u7b87\u6240\u3067\u30b8\u30e3\u30f3\u30d7\u547d\u4ee4\u3092\u99c6\u4f7f\u3057\u305f\u518d\u5e30\u547c\u51fa\u3057\u304c\u884c\u308f\u308c\u3066\u304a\u308a\u5de5\u592b\u304c\u611f\u3058\u3089\u308c\u307e\u3059\uff0e<br \/>\n\u30a2\u30c3\u30ab\u30fc\u30de\u30f3\u95a2\u6570\u306e\u6f14\u7b97\u304c\u5404\u53e5\u306b\u7d0d\u3081\u3089\u308c\u3066\u3044\u308b\u3053\u3068\u306b\u3082\u307e\u3068\u307e\u308a\u304c\u3042\u308a\u307e\u3059\uff0e<br \/>\n<br \/>\n\u307e\u305f\uff13\u53e5\u76ee\u306eDEY\/INY\uff0c\uff14\u53e5\u76ee\u306eTAX\/TXA\uff0c\uff15\u53e5\u76ee\u306eDEX\/TAX\u304c\u5358\u306a\u308bNOP\u3067\u306a\u304f<br \/>\n\u97fb\u3092\u8e0f\u3080\u305f\u3081\u306b\uff12\u547d\u4ee4\u3092\u7e70\u308a\u8fd4\u3057\u547c\u3073\u51fa\u3057\u3066\u3044\u308b\u70b9\u306b\u306f\u5c0f\u6c17\u5473\u3088\u3044\u30ea\u30ba\u30e0\u304c\u3042\u308a\uff0c<br \/>\n\u8efd\u5feb\u306a\u4f5c\u54c1\u306b\u4ed5\u4e0a\u304c\u3063\u3066\u3044\u307e\u3059\uff0e\n<\/td>\n<\/tr>\n<\/table>\n<p><\/p>\n<pre><code>\r\n\r\n<a name=\"lst_misaka.asm.txt\">\u30ea\u30b9\u30c84.4: \u300c\u30df\u30b5\u30ab\u3058\u3083\u306a\u3044\u3088\u300d\u306e\u30a2\u30bb\u30f3\u30d6\u30e9\u30fb\u30ea\u30b9\u30c8<\/a>\r\n\r\n        L0:             ;; 5 \/\/ ack(x,y)=y+1 when x=0\r\nd0 03           BNE L1  ;; x!=0 goto L1 \r\nc8              INY     ;; y=y+1        \r\n98              TYA     ;; result is in a\r\n60              RTS                     \r\n                                        \r\n        L1:             ;; 7 \/\/ ack(x,y)=ack(x-1,1) when y=0\r\n98              TYA     ;; a=y, y=0?    \r\nd0 04           BNE L2  ;; y!=0 goto L2 \r\nc8              INY     ;; y=1          \r\nca              DEX     ;; x=x-1        \r\n50 f4           BVC L0  ;; get ack(x-1,1)\r\n                                        \r\n        L2:             ;; 5 \/\/ ack(x-1, ack(x,y-1)) otherwise\r\n88              DEY                     \r\nc8              INY                     \r\n88              DEY     ;; y=y-1        \r\n8a              TXA     ;; a=x          \r\n48              PHA     ;; save x into stack\r\n                                        \r\n20 04 06        JSR L0  ;; 7 \/\/ get ack(x,y-1)\r\na8              TAY     ;; set y=ack(x,y-1)\r\n68              PLA     ;; recover x into a\r\naa              TAX     ;;              \r\n8a              TXA     ;;              \r\n                                        \r\n                        ;; 7 \/\/         \r\nca              DEX     ;;              \r\naa              TAX     ;;              \r\nca              DEX     ;;              \r\naa              TAX     ;; x=a          \r\nca              DEX     ;; x=x-1        \r\n50 e1           BVC L0  ;; get ack(x-1, ack(x,y-1))\r\n\r\n<\/code><\/pre>\n<p><spacer type=vertical size=50><\/p>\n<h2><a name=\"subsection_4.5\">4.5 \u4f5c\u54c1\u300c\u30ef\u30d3\u30b5\u30d3\u3068\u66f8\u3053\u3046\u3068\u601d\u3044\u9811\u5f35\u3063\u305f\u30e1\u30e2\u30ea\u4e0d\u8db3\u3067\u30ef\u30d3\u3067\u59a5\u5354\u3059\u300d<\/a><\/h2>\n<p><spacer type=vertical size=25><\/p>\n<ul>\n<li>\u6b4c\u4eba\uff1a\u30c6\u30c4\u306e\u6a58\n<li>\u4f5c\u54c1\u306e\u30c6\u30fc\u30de\uff1a<br \/>\n<table border=1>\n<tr>\n<td>\n\u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0\u306ePC-8001\u304a\u3088\u3073Z80\u306e\u7279\u5fb4\u3092\u6700\u5927\u9650\u3044\u304b\u3057\u3001\u308f\u3073\u3055\u3073\u3092<br \/>\n\u8868\u73fe\u3057\u3088\u3046\u3068\u8003\u3048\u307e\u3057\u305f\u3002<br \/>\n<br \/>\n\u30d7\u30ed\u30b0\u30e9\u30e0\u306e\u52d5\u304d\u306f\u5358\u7d14\u3067\u3001\u3042\u3089\u304b\u3058\u3081\u7528\u610f\u3057\u305f\u201d\u30ef\u30d3\u201d\u306e\u30b0\u30e9\u30d5\u30a3\u30c3\u30af<br \/>\n\u30c7\u30fc\u30bf\u3092VRAM\u306b\u76f4\u63a5\u66f8\u304d\u8fbc\u3080\u3060\u3051\u3067\u3059\u3002<br \/>\n<br \/>\n\u5de5\u592b\u3057\u305f\u70b9\u3068\u3057\u3066\u306f\u3001\u97fb\u3092\u8e0f\u3080\u305f\u3081\u306b\u3001\uff15\uff17\uff15\uff17\uff17\u306e\u5148\u982d\u306f\u3001\u3059\u3079\u30662x\u3068<br \/>\n1x\u3067\u7d71\u4e00\u3057\u3001\u304b\u3064\uff15\u306e\u6bb5\u306f2x\u3001\uff17\u306e\u6bb5\u306f1x\u3067\u59cb\u307e\u308b\u3088\u3046\u306b\u3057\u307e\u3057\u305f\u3002<br \/>\n\u307e\u305f\u3001NOP\u3067\u306e\u8abf\u6574\u3092\u6975\u529b\u3055\u3051\u308b\u305f\u3081\u3001\u30c7\u30fc\u30bf\u9818\u57df\u3092\u672b\u5c3e\u306b\u3082\u3063\u3066\u3053\u305a\u306b\u3001<br \/>\n0xF139\u304b\u3089\u306f\u3058\u307e\u308b\u4e2d\u9593\u306b\u57cb\u3081\u8fbc\u307f\u3001\u305d\u306e\u76f4\u524d\u3067\u3001\u76f8\u5bfe\u30b8\u30e3\u30f3\u30d7\u3092\u4f7f\u3063\u3066\u3001<br \/>\n0xF140\u304b\u3089\u306e\u30b3\u30d4\u30fc\u30eb\u30fc\u30d7\u306b\u98db\u3070\u3057\u3066\u3044\u307e\u3059\u3002<br \/>\n<br \/>\n\u307e\u305f\u540c\u3058\u304fNOP\u3092\u3044\u308c\u306a\u3044\u305f\u3081\u306b\u3001JR\u3067\u306f\u306a\u304f\u3001JR Z\u3092\u4f7f\u3044\u30010xF133\u3067\u3001<br \/>\nZ\u30d5\u30e9\u30b0\u3092\u7acb\u3066\u308b\u305f\u3081\u306b\u3001XOR A\u3092\u3057\u3066\u3044\u307e\u3059\u3002<br \/>\n\u307e\u305f\u3001\u3053\u306eXOR A\u306f\u3001Z80\u3067\u306f\u591a\u69d8\u3055\u308c\u3066\u3044\u305f\u30c6\u30af\u30cb\u30c3\u30af\u203b\u3067\u3001<br \/>\n\u4eca\u56de\u3001\u79c1\u304c\u3069\u3046\u3057\u3066\u3082\u57cb\u3081\u8fbc\u307f\u305f\u304b\u3063\u305f\u30b3\u30fc\u30c9\u3067\u3059\u3002<br \/>\n\u552f\u4e000xF13F\u306b\u30010x00\u3092\u57cb\u3081\u8fbc\u307f\u307e\u3057\u305f\u304c\u3001\u3053\u308c\u306f\u8abf\u6574\u306e\u305f\u3081\u306eNOP\u3067\u306f\u306a\u304f\u3001<br \/>\n\u3042\u304f\u307e\u3067\u30c7\u30fc\u30bf\u5217\u306e\u6700\u5f8c\u3092\u610f\u5473\u3059\u308b0x00\u3067\u3059\u3002<br \/>\n<br \/>\n\u4eca\u56de\u3001\u552f\u4e00\u6b8b\u5ff5\u306a\u306e\u306f\u30010xF12D\u3067\u3001\u7d76\u5bfe\u30a2\u30c9\u30ec\u30b9\u3092\u6307\u5b9a\u3057\u3066\u3044\u308b\u305f\u3081\u3001<br \/>\n\u30b3\u30fc\u30c9\u304c\u30ea\u30ed\u30b1\u30fc\u30bf\u30d6\u30eb\u3067\u306a\u304f\u306a\u3063\u3066\u3057\u307e\u3063\u305f\u70b9\u3067\u3059\u3002<br \/>\n<br \/>\n\u203bXOR A\u306f\u3001\u6b21\u306e\u4e8c\u3064\u306e\u7528\u9014\u3067\u5229\u7528\u3055\u308c\u3066\u3044\u305f<br \/>\n<br \/>\n\u30fbLD A,0x00\uff08\uff12\u30d0\u30a4\u30c8\uff09\u3068\u7b49\u4fa1\u306e\u52d5\u4f5c\u3092\u3001XOR A\u3067\u306f\uff11\u30d0\u30a4\u30c8\u3067\u3059\u3080<br \/>\n\u30a8\u30b3\u306a\u30b3\u30fc\u30c7\u30a3\u30f3\u30b0<br \/>\n<br \/>\n\u30fbXOR A\u306f\u6f14\u7b97\u3067\u5fc5\u305a0\u306b\u306a\u308b\u305f\u3081\u3001Z-FLAG\u3092\u30bb\u30c3\u30c8\u3059\u308b\u305f\u3081\u306b\u5229\u7528\u3055\u308c\u308b\n<\/td>\n<\/tr>\n<\/table>\n<\/ul>\n<p>\n(\u4f5c\u54c1\u306e\u7dcf\u8a55)<\/p>\n<table border=1>\n<tr>\n<td>\nPC-8001(Z80)\u306e\u30c6\u30ad\u30b9\u30c8\u30d9\u30fc\u30b9\u30b0\u30e9\u30d5\u30a3\u30c3\u30af(\u4f4e\u89e3\u50cf\u5ea6\u30b0\u30e9\u30d5\u30a3\u30c3\u30af)\u3092\u5229\u7528\u3057\u305f\u4f5c\u54c1\u3067\u3059\uff0e\uff14\u53e5\u76ee\u306b\u304d\u308c\u3044\u306b\u7d0d\u3081\u3089\u308c\u305f\u51fa\u529b\u30c7\u30fc\u30bf\u3092\uff0c0xf300\u304b\u3089\u59cb\u307e\u308b\u30c6\u30ad\u30b9\u30c8VRAM\u9818\u57df\u306b\u76f4\u63a5\u66f8\u304d\u8fbc\u3080\u3053\u3068\u3067\u30b0\u30e9\u30d5\u30a3\u30c3\u30af\u63cf\u753b\u3057\u3066\u3044\u307e\u3059\uff0e\u5404\u53e5\u306e\u5148\u982d\u3067\u5c0f\u3055\u3044\u5024\u3067\u97fb\u304c\u8e0f\u307e\u308c\u3066\u3044\u308b\u305f\u3081\uff0c\u8efd\u3081\u306e\u30ea\u30ba\u30e0\u304c\u611f\u3058\u3089\u308c\u307e\u3059\uff0e<br \/>\n<br \/>\nZ80\u30aa\u30ea\u30b8\u30ca\u30eb\u30678080\u306b\u306f\u5b58\u5728\u3057\u306a\u3044DJNZ\u547d\u4ee4\uff0c\u307e\u305fZ80\u3067\u591a\u7528\u3055\u308c\u305f\u300cXOR A\u300d\u304c\u5229\u7528\u3055\u308c\u3066\u3044\u308b\u3053\u3068\u306b\u306f\uff0c\u719f\u7df4\u3057\u305f\u30d7\u30ed\u30b0\u30e9\u30de\u306b\u3088\u308b\u5341\u5206\u306b\u719f\u6210\u3057\u305f\u9b92\u305a\u3057\u306e\u3088\u3046\u306a\u98a8\u5473\u3092\u611f\u3058\u3055\u305b\uff0c\u30bf\u30a4\u30c8\u30eb\u306b\u3042\u308b\u300c\u30ef\u30d3\u300d\u306e\u5883\u5730\u304c\u3046\u307e\u304f\u8868\u73fe\u3055\u308c\u3066\u3044\u307e\u3059\uff0e\n<\/td>\n<\/tr>\n<\/table>\n<p><\/p>\n<pre><code>\r\n\r\n<a name=\"lst_wabi.asm.txt\">\u30ea\u30b9\u30c84.5: \u300c\u30ef\u30d3\u30b5\u30d3\u3068\u66f8\u3053\u3046\u3068\u601d\u3044\u9811\u5f35\u3063\u305f\u30e1\u30e2\u30ea\u4e0d\u8db3\u3067\u30ef\u30d3\u3067\u59a5\u5354\u3059\u300d\u306e\u30a2\u30bb\u30f3\u30d6\u30e9\u30fb\u30ea\u30b9\u30c8<\/a>\r\n\r\nF128  LD HL,0x8000 ; PC-8001 VRAM ATTRIBUTE(GRAPHICS)\r\nF12B  LD B,0x06 ; SET LOOP COUNTER      \r\nF12D  LD DE,0xF139 ; SET START ADDRESS OF DATA\r\nF130  LD (0xF350),HL ; SET VRAM ATTRIBUTES\r\nF133  XOR A ; SET Z-FLAG                \r\nF134  LD HL,0xF300 ; SET START ADDRESS OF PC-8001 VRAM\r\nF137  JR Z,+0x07 ; JUMP TO COPY ROUTINE WHEN Z-FLAG IS TRUE\r\nF139  DATA 0x13 0x79 0xF0 0x8A 0x03 0x03 0x00 ; OUTPUT GRAPHIC DATA\r\nF140  LD A,(DE) ; READ FROM DATA        \r\nF141  LD (HL),A ; WRITE TO VRAM         \r\nF142  INC DE ; INCREMENT POINTER FOR READ\r\nF143  INC HL ; INCREMENT POINTER FOR WRITE\r\nF144  DJNZ 0xFA ; LOOP                  \r\nF146  RET ; RETURN TO N-BASIC           \r\n\r\n<\/code><\/pre>\n<p><spacer type=vertical size=50><\/p>\n<h2><a name=\"subsection_4.6\">4.6 \u4f5c\u54c1\u300c\u3046\u3069\u3093\u306b\u601d\u3044\u3092\u99b3\u305b\u3066\u300d<\/a><\/h2>\n<p><spacer type=vertical size=25><\/p>\n<ul>\n<li>\u6b4c\u4eba\uff1a\u307f\u3080\u3089\n<li>\u4f5c\u54c1\u306e\u30c6\u30fc\u30de\uff1a<br \/>\n<table border=1>\n<tr>\n<td>\n\u9999\u5ddd\u306b\u3076\u3089\u308a\u3068\u7acb\u3061\u5bc4\u3063\u305f\u969b\u3001\u3075\u3068\u77ed\u6b4c\u3092\u4e00\u53e5\u8a60\u307f\u305f\u304f\u306a\u308a\u3001<br \/>\n\u666e\u6bb5\u304a\u4e16\u8a71\u306b\u306a\u3063\u3066\u3044\u308b Microsoft .NET \u74b0\u5883\u3092\u7528\u3044\u3066\u4f5c\u6210\u3057\u307e\u3057\u305f\u3002<br \/>\n<br \/>\n\u300c\u304a\u3046\u3069\u3093\u300d\u3068\u3044\u3046\u6587\u5b57\u5217\u306e\u6587\u5b57\u4e00\u3064\u4e00\u3064\u304c\u30010x30?? \u3067\u8868\u73fe\u3067\u304d\u308b\u3053\u3068\u3001<br \/>\n\u305d\u3057\u3066ldc \u547d\u4ee4\u3092\u7528\u3044\u3066\u5024\u8a2d\u5b9a\u3092\u884c\u3046\u3068\uff15\u30d0\u30a4\u30c8\u306b\u306a\u308b\u3053\u3068\u3092\u4f7f\u7528\u3057\u3066<br \/>\n\u4e09\u5341\u4e00\u30d0\u30a4\u30c8\u306b\u7d0d\u3081\u307e\u3057\u305f\u3002<br \/>\n<br \/>\n\u5b9a\u6570\u8a2d\u5b9a\u304c\uff15\u30d0\u30a4\u30c8\u3001\u305d\u308c\u4ee5\u5916\u304c\uff17\u30d0\u30a4\u30c8\u3068\u3044\u3046\u3068\u3053\u308d\u3084\u3001\u30eb\u30fc\u30d7\u3092\u3057\u3066\u6587\u5b57\u3092\u51fa\u529b\u3057\u305f\u5f8c\u3001\u304d\u308c\u3044\u306b\u30eb\u30fc\u30d7\u3092\u629c\u3051\u3066 ret \u3067\u7f8e\u3057\u304f\u7d42\u308f\u3089\u305b\u3066\u3044\u308b\u70b9\u3001\u51fa\u529b\u3055\u308c\u308b\u6587\u5b57\u5217\u304c\u3072\u3089\u304c\u306a\u3067\u3042\u308b\u70b9\u304c\u30a2\u30d4\u30fc\u30eb\u30dd\u30a4\u30f3\u30c8\u3067\u306f\u306a\u3044\u304b\u3068\u8003\u3048\u3066\u3044\u307e\u3059\u3002\n<\/td>\n<\/tr>\n<\/table>\n<\/ul>\n<p>\n(\u4f5c\u54c1\u306e\u7dcf\u8a55)<\/p>\n<table border=1>\n<tr>\n<td>\n\uff14\u6587\u5b57\u306e\u5148\u982d\u30d0\u30a4\u30c8\u304c\u5171\u901a\u3057\u3066\u3044\u308b\u3053\u3068\u3092\u5229\u7528\u3057\u3066\uff0c\uff14\u30d0\u30a4\u30c8\u30c7\u30fc\u30bf\u304b\u3089\u30b7\u30d5\u30c8\u6f14\u7b97\u306b\u3088\u308a\uff11\u30d0\u30a4\u30c8\u30c7\u30fc\u30bf\u3092\u9806\u6b21\u53d6\u308a\u51fa\u3059\u3053\u3068\u3067\uff0c\u51fa\u529b\u30c7\u30fc\u30bf\u3092\u5727\u7e2e\u3057\u3066\u3044\u308b\u70b9\u306b\u5de5\u592b\u304c\u898b\u3089\u308c\u307e\u3059\uff0e\u30a2\u30fc\u30ad\u30c6\u30af\u30c1\u30e3\u304c\u30b9\u30bf\u30c3\u30af\u30d9\u30fc\u30b9\u3067\u3042\u308b\u305f\u3081PUSH\uff0fPOP\u304c\u7e70\u308a\u8fd4\u3055\u308c\u3066\u304a\u308a\uff0c\u9577\u6642\u9593\u3053\u306d\u3089\u308c\u305f\u8170\u306e\u5f37\u3044\u3046\u3069\u3093\u306b\u306a\u308a\u305d\u3046\u3067\u3059\uff0e\n<\/td>\n<\/tr>\n<\/table>\n<p><\/p>\n<pre><code>\r\n\r\n<a name=\"lst_udon.asm.txt\">\u30ea\u30b9\u30c84.6: \u300c\u3046\u3069\u3093\u306b\u601d\u3044\u3092\u99b3\u305b\u3066\u300d\u306e\u30a2\u30bb\u30f3\u30d6\u30e9\u30fb\u30ea\u30b9\u30c8<\/a>\r\n\r\n    ldc.i4 0x9369464A                   \r\n    stloc.0                             \r\nWrite:                                  \r\n    ldloc.0                             \r\n    ldc.i4.m1                           \r\n    ldc.i4.8                            \r\n    shl                                 \r\n    not                                 \r\n    and                                 \r\n    ldc.i4 0x3000                       \r\n    add                                 \r\n    call void [mscorlib]System.Console::Write(char)\r\n    ldloc.0                             \r\n    ldc.i4.8                            \r\n    shr.un                              \r\n    stloc.0                             \r\n    ldloc.0                             \r\n    brtrue.s Write                      \r\n    ret                                 \r\n\r\n<\/code><\/pre>\n<p><spacer type=vertical size=70><\/p>\n<h1><a name=\"section_5\">5 \u4f5c\u54c1\u3092\u5b9f\u884c\u3057\u3066\u307f\u3088\u3046<\/a><\/h1>\n<p><spacer type=vertical size=30><\/p>\n<p><a href=\"#lst_natsuyasumi.tnk.txt\">\u30ea\u30b9\u30c81.1<\/a>\u3067\u7d39\u4ecb\u3057\u305f\u4f5c\u54c1\u300c\u590f\u4f11\u307f\u300d\u3092\u52d5\u304b\u3059\u3053\u3068\u3067\uff0c<br \/>\n\u30a2\u30bb\u30f3\u30d6\u30e9\u77ed\u6b4c\u306b\u5165\u9580\u3057\u3066\u307f\u307e\u3057\u3087\u3046\uff0e<\/p>\n<p>\n\u307e\u305a\u306a\u3093\u3089\u304b\u306eGNU\/Linux\u30c7\u30a3\u30b9\u30c8\u30ea\u30d3\u30e5\u30fc\u30b7\u30e7\u30f3\u74b0\u5883\u3067\uff0c\u30d0\u30a4\u30ca\u30ea\u30a8\u30c7\u30a3\u30bf\u306b\u3088\u3063\u3066<br \/>\n\u300c\u590f\u4f11\u307f\u300d\u306e\u30d0\u30a4\u30c8\u30b3\u30fc\u30c9\u3092\u30d5\u30a1\u30a4\u30eb\u5316\u3057\u307e\u3059\uff0e<br \/>\n\u7b46\u8005\u306fCentOS\u4e0a\u3067\uff0chexedit\u3068\u3044\u3046\u30d0\u30a4\u30ca\u30ea\u30a8\u30c7\u30a3\u30bf\u3092\u4f7f\u3044\u307e\u3057\u305f\uff0e<\/p>\n<p>\n<center><br \/>\n<a href=\"http:\/\/www.ospn.jp\/press\/20140328no38-useit-oss.html\/hexedit\" rel=\"attachment wp-att-24806\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.ospn.jp\/press\/wp-content\/uploads\/2014\/03\/hexedit.png\" alt=\"hexedit\" width=\"400\" height=\"308\" class=\"alignnone size-full wp-image-24806\" \/><\/a><\/p>\n<p>\n<a name=\"fig_hexedit\">\u56f35.1: hexedit\u3067\u30d0\u30a4\u30c8\u30b3\u30fc\u30c9\u3092\u30d5\u30a1\u30a4\u30eb\u5316\u3059\u308b<\/a><br \/>\n<\/center><\/p>\n<p>\n\u4f5c\u6210\u3057\u305f natsuyasumi.bin \u3092 objdump \u3067\u9006\u30a2\u30bb\u30f3\u30d6\u30eb\u3059\u308b\u3053\u3068\u3067\uff0c<br \/>\n\u30a2\u30bb\u30f3\u30d6\u30e9\u3092\u51fa\u529b\u3055\u305b\u307e\u3059\uff0e<\/p>\n<pre><code>\r\n\r\n<a name=\"lst_natsuyasumi.objdump.txt\">\u30ea\u30b9\u30c85.1: objdump\u3067\u9006\u30a2\u30bb\u30f3\u30d6\u30eb\u3059\u308b<\/a>\r\n\r\n$ objdump -b binary -m i386 -D natsuyasumi.bin\r\n\r\nnatsuyasumi.bin:     file format binary\r\n\r\n\r\nDisassembly of section .data:\r\n\r\n00000000 &lt;.data&gt;:\r\n   0:   6a 00                   push   $0x0         \u2510\r\n   2:   58                      pop    %eax         \u2502\uff11\u53e5\u76ee\r\n   3:   50                      push   %eax         \u2502\uff15\u30d0\u30a4\u30c8\r\n   4:   40                      inc    %eax         \u2518\r\n   5:   68 79 61 6d 61          push   $0x616d6179  \u2510\r\n   a:   50                      push   %eax         \u2502\uff12\u53e5\u76ee\r\n   b:   40                      inc    %eax         \u2518\uff17\u30d0\u30a4\u30c8\r\n   c:   6a 08                   push   $0x8         \u2510\r\n   e:   5a                      pop    %edx         \u2502\uff13\u53e5\u76ee\r\n   f:   5b                      pop    %ebx         \u2502\uff15\u30d0\u30a4\u30c8\r\n  10:   40                      inc    %eax         \u2518\r\n  11:   68 57 61 6b 61          push   $0x616b6157  \u2510\r\n  16:   54                      push   %esp         \u2502\uff14\u53e5\u76ee\r\n  17:   40                      inc    %eax         \u2518\uff17\u30d0\u30a4\u30c8\r\n  18:   59                      pop    %ecx         \u2510\r\n  19:   cd 80                   int    $0x80        \u2502\r\n  1b:   58                      pop    %eax         \u2502\uff15\u53e5\u76ee\r\n  1c:   58                      pop    %eax         \u2502\uff17\u30d0\u30a4\u30c8\r\n  1d:   58                      pop    %eax         \u2502\r\n  1e:   c3                      ret                 \u2518\r\n$     \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518      \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518\r\n         \u6a5f\u68b0\u8a9e\u30b3\u30fc\u30c9              \u30cb\u30fc\u30e2\u30cb\u30c3\u30af\r\n\r\n<\/code><\/pre>\n<p><\/p>\n<p>\n<a href=\"#lst_natsuyasumi.objdump.txt\">\u30ea\u30b9\u30c85.1<\/a>\u3092\u898b\u3066\u307f\u3066\u304f\u3060\u3055\u3044\uff0e<br \/>\n\u5de6\u5074\u306b\u51fa\u529b\u3055\u308c\u3066\u3044\u308b\u6a5f\u68b0\u8a9e\u30b3\u30fc\u30c9\u306f\uff0c<br \/>\n\uff15\u30d0\u30a4\u30c8\uff0c\uff17\u30d0\u30a4\u30c8\uff0c\uff15\u30d0\u30a4\u30c8\uff0c\uff17\u30d0\u30a4\u30c8\uff0c\uff17\u30d0\u30a4\u30c8\u306e\u4f4d\u7f6e\u3067\u533a\u5207\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\uff0e<br \/>\n\u3064\u307e\u308a\u300c\uff15\u30fb\uff17\u30fb\uff15\u30fb\uff17\u30fb\uff17\u300d\u306e\u3088\u3046\u306b\u306a\u3063\u3066\u3044\u308b\u308f\u3051\u3067\u3059\uff0e<br \/>\n\u3053\u306e\u3088\u3046\u306a\u30a2\u30bb\u30f3\u30d6\u30e9\u30fb\u30d7\u30ed\u30b0\u30e9\u30e0\u3092\u300c\u30a2\u30bb\u30f3\u30d6\u30e9\u77ed\u6b4c\u300d\u3068\u547c\u3093\u3067\u3044\u307e\u3059\uff0e<\/p>\n<p>\n\u3055\u3089\u306b\u30cb\u30fc\u30e2\u30cb\u30c3\u30af\u90e8\u5206\u3092\u5207\u308a\u51fa\u3057\uff0c\u9069\u5f53\u306a\u30d8\u30c3\u30c0\u3092\u3064\u3051\u308b\u3053\u3068\u3067<br \/>\n\u30a2\u30bb\u30f3\u30d6\u30eb\u3067\u304d\u308b\u72b6\u614b\u306b\u3057\u307e\u3059\uff0e<\/p>\n<pre><samp>\r\n$ printf \"\\t.section .text\\n\" > natsuyasumi.S\r\n$ printf \"\\t.global main\\n\" >> natsuyasumi.S\r\n$ printf \"\\t.type main, @function\\n\" >> natsuyasumi.S\r\n$ printf \"main:\\n\" >> natsuyasumi.S\r\n$ objdump -b binary -m i386 -D natsuyasumi.bin | tail -n 20 | cut -c 28- >> natsuyasumi.S\r\n<\/samp><\/pre>\n<p><\/p>\n<p>\ngcc\u3067\u30a2\u30bb\u30f3\u30d6\u30eb\u3057\u3066\u898b\u307e\u3057\u3087\u3046\uff0e<\/p>\n<pre><samp>\r\n$ cat natsuyasumi.S\r\n        .section .text\r\n        .global main\r\n        .type main, @function\r\nmain:\r\n        push   $0x0\r\n        pop    %eax\r\n        push   %eax\r\n        inc    %eax\r\n        push   $0x616d6179\r\n        push   %eax\r\n        inc    %eax\r\n        push   $0x8\r\n        pop    %edx\r\n        pop    %ebx\r\n        inc    %eax\r\n        push   $0x616b6157\r\n        push   %esp\r\n        inc    %eax\r\n        pop    %ecx\r\n        int    $0x80\r\n        pop    %eax\r\n        pop    %eax\r\n        pop    %eax\r\n        ret    \r\n$ gcc natsuyasumi.S -o natsuyasumi\r\n$ .\/natsuyasumi\r\nWakayama$ \r\n<\/samp><\/pre>\n<p><\/p>\n<p>\nbash\u306e\u30d7\u30ed\u30f3\u30d7\u30c8\u306e\u300c$\u300d\u304c\u7d9a\u3044\u3066\u3044\u308b\u305f\u3081\u308f\u304b\u308a\u306b\u304f\u3044\u3067\u3059\u304c\uff0c<br \/>\n\u300cWakayama\u300d\u3068\u51fa\u529b\u3055\u308c\u3066\u3044\u307e\u3059\uff0e<\/p>\n<p><spacer type=vertical size=70><\/p>\n<h1><a name=\"section_6\">6 \u30a2\u30bb\u30f3\u30d6\u30e9\u306e\u8aac\u660e<\/a><\/h1>\n<p><spacer type=vertical size=30><\/p>\n<p>\u30a2\u30bb\u30f3\u30d6\u30e9\u306b\u3088\u308b\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u306b\u306f\u99b4\u67d3\u307f\u306e\u7121\u3044\u304b\u305f\u3082\u591a\u3044\u3067\u3057\u3087\u3046\u304b\u3089\uff0c<br \/>\n\u3053\u3053\u3067\u7c21\u5358\u306b\u8aac\u660e\u3057\u3066\u304a\u304d\u307e\u3057\u3087\u3046\uff0e<\/p>\n<p><spacer type=vertical size=50><\/p>\n<h2><a name=\"subsection_6.1\">6.1 \u6a5f\u68b0\u8a9e\u30b3\u30fc\u30c9\u3068\u30cb\u30fc\u30e2\u30cb\u30c3\u30af<\/a><\/h2>\n<p><spacer type=vertical size=25><\/p>\n<p><a href=\"#lst_natsuyasumi.objdump.txt\">\u30ea\u30b9\u30c85.1<\/a>\u3067\u306f\u4e2d\u592e\u306e\u300c6a 00\u300d\u300c58\u300d\u300c50\u300d\u306e\u3088\u3046\u306a16\u9032\u6570\u30b3\u30fc\u30c9\u306e\u5217\u304c<br \/>\n\u300c\u6a5f\u68b0\u8a9e\u30b3\u30fc\u30c9\u300d\uff0c\u53f3\u5074\u306e\u300cpush $0x0\u300d\u300cpop %eax\u300d\u300cpush %eax\u300d\u306a\u3069\u3068<br \/>\n\u306a\u3063\u3066\u3044\u308b\u5217\u304c\u300c\u30cb\u30fc\u30e2\u30cb\u30c3\u30af\u300d\u3068\u547c\u3070\u308c\u308b\u90e8\u5206\u3067\u3059\uff0e<\/p>\n<p>\nCPU\u306f\u6a5f\u68b0\u8a9e\u30b3\u30fc\u30c9\u3092\u5b9f\u884c\u3057\u307e\u3059\uff0e\u3064\u307e\u308a\u30e1\u30e2\u30ea\u4e0a\u306b\u306f<br \/>\n\u300c6a 00 58 50&#8230;\u300d\u306e\u3088\u3046\u306a\u30d0\u30a4\u30c8\u5217\u304c\u7f6e\u304b\u308c\u3066\u3044\u3066\uff0c<br \/>\nCPU\u306f\u30e1\u30e2\u30ea\u4e0a\u304b\u3089\u30d0\u30a4\u30c8\u5217\u3092\u8aad\u307f\u8fbc\u307f\u306a\u304c\u3089\u5b9f\u884c\u3057\u307e\u3059\uff0e<br \/>\n\u4f8b\u3048\u3070\u300c6a 00\u300d\u306a\u3089\u3070\uff0c\u30b9\u30bf\u30c3\u30af\u4e0a\u306b\u30bc\u30ed\u3068\u3044\u3046\u5024\u3092\u683c\u7d0d\u3057\u307e\u3059\uff0e<br \/>\n\u300c58\u300d\u306a\u3089\u3070\u30b9\u30bf\u30c3\u30af\u304b\u3089\u30ec\u30b8\u30b9\u30bf\u306b\u5024\u3092\u5fa9\u65e7\u3059\u308b\uff0c\u3068\u3044\u3046\u52d5\u4f5c\u3092\u3057\u307e\u3059\uff0e<br \/>\n\u6570\u5024\u306b\u5bfe\u5fdc\u3059\u308b\u52d5\u4f5c\u3092\u3059\u308b\u3088\u3046\u306b\uff0cCPU\u5185\u90e8\u306e\u56de\u8def\u304c\u8a2d\u8a08\u3057\u3066\u3042\u308b\u308f\u3051\u3067\u3059\uff0e<br \/>\n\u3053\u308c\u306fCPU\u304c\u30cd\u30a4\u30c6\u30a3\u30d6\u306b\u5b9f\u884c\u3067\u304d\u308b\u547d\u4ee4\u3067\u3059\uff0e<\/p>\n<p>\n\u3057\u304b\u3057CPU\u3078\u306e\u547d\u4ee4\u3092\uff0c\u300c6a 00\u300d\u300c58\u300d\u306a\u3069\u306e\u3088\u3046\u306b\u6570\u5b57\u3068\u3057\u3066\u6271\u3046\u306e\u3067\u306f\uff0c<br \/>\n\u6211\u3005\u4eba\u9593\u306b\u306f\u308f\u304b\u308a\u306b\u304f\u304f\u3066\u3057\u3087\u3046\u304c\u3042\u308a\u307e\u305b\u3093\uff0e<br \/>\n\u305d\u3053\u3067\u300c6a 00\u300d\u306f\u4fbf\u5b9c\u4e0a\u300cpush $0x0\u300d\u3068\u8868\u8a18\u3059\u308b\u3053\u3068\u306b\u3057\u307e\u3059\uff0e<br \/>\n\u3053\u306e\u3088\u3046\u306a\u4eba\u9593\u5411\u304d\u306e\u8868\u8a18\u3092\u300c\u30cb\u30fc\u30e2\u30cb\u30c3\u30af\u300d\u3068\u547c\u3073\u307e\u3059\uff0e<br \/>\n\u3055\u3089\u306b\u300cpush $0x0\u300d\u3068\u3044\u3046\u30cb\u30fc\u30e2\u30cb\u30c3\u30af\u304c\u3042\u3063\u305f\u3089\u300c6a 00\u300d\u3068\u3044\u3046<br \/>\n\u30d0\u30a4\u30c8\u30b3\u30fc\u30c9\u306b\u5909\u63db\u3059\u308b\u3088\u3046\u306a\u30c4\u30fc\u30eb\u3092\u4f5c\u6210\u3059\u308c\u3070\uff0c\u6211\u3005\u4eba\u9593\u306f\u308f\u304b\u308a<br \/>\n\u3084\u3059\u3044\u30cb\u30fc\u30e2\u30cb\u30c3\u30af\u3067\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\uff0e<br \/>\n\u3053\u308c\u304c\u300c\u30a2\u30bb\u30f3\u30d6\u30e9\u300d\u3068\u547c\u3070\u308c\u308b\u30c4\u30fc\u30eb\u3067\u3059\uff0e<\/p>\n<p><spacer type=vertical size=50><\/p>\n<h2><a name=\"subsection_6.2\">6.2 \u547d\u4ee4\u3092\uff13\u3064\u3060\u3051\u899a\u3048\u3066\u307f\u3088\u3046<\/a><\/h2>\n<p><spacer type=vertical size=25><\/p>\n<p><a href=\"#lst_natsuyasumi.objdump.txt\">\u30ea\u30b9\u30c85.1<\/a>\u3092\u3082\u3046\u4e00\u5ea6\u898b\u3066\u307f\u307e\u3057\u3087\u3046\uff0e<br \/>\n\u30cb\u30fc\u30e2\u30cb\u30c3\u30af\u306e\u90e8\u5206\u3092\u898b\u308b\u3068\uff0c\u300cpush\u300d\u300cpop\u300d\u300cinc\u300d\u3068\u3044\u3046\uff13\u3064\u306e\u547d\u4ee4\u304c<br \/>\n\u4f7f\u308f\u308c\u3066\u3044\u307e\u3059\uff0e\u3064\u307e\u308a\uff0c\u3053\u306e\uff13\u3064\u306e\u547d\u4ee4\u3060\u3051\u899a\u3048\u3066\u3057\u307e\u3048\u3070\uff0c<br \/>\n<a href=\"#lst_natsuyasumi.objdump.txt\">\u30ea\u30b9\u30c85.1<\/a>\u306e\u52d5\u4f5c\u306f\u8aad\u307f\u89e3\u3051\u307e\u3059\uff0e<\/p>\n<p>\n\u300cpush\u300d\u306f\u30b9\u30bf\u30c3\u30af\u3078\u306e\u300c\u30d7\u30c3\u30b7\u30e5\u300d\u3068\u547c\u3070\u308c\uff0c\u5f15\u6570\u3067\u4e0e\u3048\u3089\u308c\u305f\u5024\u3092<br \/>\n\u30b9\u30bf\u30c3\u30af\u306b\u4fdd\u5b58\u3057\u307e\u3059\uff0e\u5177\u4f53\u7684\u306b\u306f\uff0c\u30b9\u30bf\u30c3\u30af\u30dd\u30a4\u30f3\u30bf\u306e\u5024\u3092\u6e1b\u7b97\u3057\uff0c<br \/>\n\u3055\u3089\u306b\u30b9\u30bf\u30c3\u30af\u30dd\u30a4\u30f3\u30bf\u306e\u6307\u3059\u5148\u306e\u30e1\u30e2\u30ea\u4e0a\u306b\u5f15\u6570\u306e\u5024\u3092\u66f8\u304d\u8fbc\u307f\u307e\u3059\uff0e<br \/>\n\u300cpop\u300d\u306f\u300c\u30dd\u30c3\u30d7\u300d\u3068\u547c\u3070\u308c\u305d\u306e\u9006\u306e\u52d5\u4f5c\u3067\uff0c\u30b9\u30bf\u30c3\u30af\u304b\u3089\u5024\u3092\u8aad\u307f\u8fbc\u307f\u307e\u3059\uff0e<\/p>\n<p>\n\u300cpush\u300d\u306e\u5f15\u6570\u306b\u306f\uff0c\u300c$0x0\u300d\u300c$0x616d6179\u300d\u306e\u3088\u3046\u306a\u5b9a\u6570\u5024\u304c\u6307\u5b9a\u3055\u308c\u3066\u3044\u307e\u3059\uff0e<br \/>\n\u3064\u307e\u308a\u3053\u308c\u3089\u306e\u5b9a\u6570\u5024\u3092\u30b9\u30bf\u30c3\u30af\u4e0a\u306b\u66f8\u304d\u8fbc\u3080\u308f\u3051\u3067\u3059\uff0e<\/p>\n<p>\n\u307e\u305f\u300c%eax\u300d\u300c%ebx\u300d\u306e\u3088\u3046\u306a\u3082\u306e\u304c\u6307\u5b9a\u3055\u308c\u3066\u3044\u308b\u7b87\u6240\u3082\u3042\u308a\u307e\u3059\uff0e<br \/>\n\u3053\u308c\u3089\u306f\u300c\u30ec\u30b8\u30b9\u30bf\u300d\u3068\u547c\u3070\u308c\u308b\u3082\u306e\u3067\uff0cCPU\u304c\u6301\u3063\u3066\u3044\u308b\u56fa\u5b9a\u306e\u5909\u6570\u3060\u3068\u601d\u3063\u3066<br \/>\n\u3044\u305f\u3060\u3044\u3066\u69cb\u3044\u307e\u305b\u3093\uff0e\u300cpush %eax\u300d\u306a\u3089\u3070EAX\u30ec\u30b8\u30b9\u30bf\u306b\u683c\u7d0d\u3055\u308c\u3066\u3044\u308b\u5024\u3092<br \/>\n\u30b9\u30bf\u30c3\u30af\u306b\u66f8\u304d\u8fbc\u307f\uff0c\u300cpop %edx\u300d\u306a\u3089\u3070\u30b9\u30bf\u30c3\u30af\u4e0a\u306e\u5024\u3092EDX\u30ec\u30b8\u30b9\u30bf\u306b\u8aad\u307f\u8fbc\u3080\uff0c<br \/>\n\u3068\u3044\u3046\u3053\u3068\u306b\u306a\u308a\u307e\u3059\uff0e<\/p>\n<p>\n\u305d\u3057\u3066\u300cinc\u300d\u306f\u30a4\u30f3\u30af\u30ea\u30e1\u30f3\u30c8\u3068\u547c\u3070\u308c\u308b\u547d\u4ee4\u3067\uff0c\u5f15\u6570\u3092\uff11\uff0c\u5897\u52a0\u3055\u305b\u307e\u3059\uff0e<br \/>\n\u4f8b\u3048\u3070\u300cinc %eax\u300d\u306a\u3089\u3070\uff0cEAX\u30ec\u30b8\u30b9\u30bf\u306e\u5024\u3092\uff11\u5897\u52a0\u3055\u305b\u308b\u3053\u3068\u306b\u306a\u308a\u307e\u3059\uff0e<\/p>\n<p>\n\u3055\u3066\uff0c<a href=\"#lst_natsuyasumi.objdump.txt\">\u30ea\u30b9\u30c85.1<\/a>\u306e\u30d7\u30ed\u30b0\u30e9\u30e0\u306f\uff0c\u3053\u3053\u307e\u3067\u306e\u8aac\u660e\u3067\u307b\u3068\u3093\u3069\u306e\u90e8\u5206\u3092\u8aad\u307f\u89e3\u304f\u3053\u3068\u304c<br \/>\n\u3067\u304d\u307e\u3059\uff0e\u52d5\u304d\u3092\u8ffd\u3063\u3066\u307f\u307e\u3057\u3087\u3046\uff0e<\/p>\n<p><spacer type=vertical size=50><\/p>\n<h2><a name=\"subsection_6.3\">6.3 \uff11\u53e5\u76ee<\/a><\/h2>\n<p><spacer type=vertical size=25><\/p>\n<p>\u307e\u305a\u6700\u521d\u306e\uff11\u53e5\u76ee\u306e\uff15\u30d0\u30a4\u30c8\u306f\uff0cpush\uff0cpop\uff0cinc\u304b\u3089\u69cb\u6210\u3055\u308c\u3066\u3044\u307e\u3059\uff0e<\/p>\n<pre><samp>\r\n   0:   6a 00                   push   $0x0\r\n   2:   58                      pop    %eax\r\n   3:   50                      push   %eax\r\n   4:   40                      inc    %eax\r\n<\/samp><\/pre>\n<p>\u300c0x\u300d\u306f16\u9032\u6570\u3067\uff0c\u3068\u3044\u3046\u610f\u5473\u3067\u3059\uff0e\u300c0x0\u300d\u3068\u3044\u3046\u5024\uff0c\u3064\u307e\u308a\u30bc\u30ed\u3092\u30b9\u30bf\u30c3\u30af\u306b<br \/>\n\u4fdd\u5b58\u3057\u307e\u3059\uff0e\u304c\uff0c\u76f4\u5f8c\u306epop\u3067\u3059\u3050\u306b\u53d6\u308a\u51fa\u3057\u3066EAX\u30ec\u30b8\u30b9\u30bf\u306b\u8aad\u307f\u8fbc\u307f\u307e\u3059\uff0e<br \/>\n\u3068\u3044\u3046\u3053\u3068\u306f\u3053\u308c\u306f\uff0c\u30b9\u30bf\u30c3\u30af\u3092\u7d4c\u7531\u3057\u3066EAX\u30ec\u30b8\u30b9\u30bf\u306b\u300c\u30bc\u30ed\u300d\u3068\u3044\u3046\u5024\u3092<br \/>\n\u8a2d\u5b9a\u3057\u3066\u3044\u308b\u3053\u3068\u306b\u306a\u308a\u307e\u3059\uff0e<\/p>\n<p>\n\u3055\u3089\u306b\u305d\u306e\u76f4\u5f8c\u306epush\u3067EAX\u30ec\u30b8\u30b9\u30bf\u306e\u5024\u3092\u30b9\u30bf\u30c3\u30af\u306b\u66f8\u304d\u8fbc\u307f\u307e\u3059\uff0e<br \/>\n\u3053\u308c\u3067\u30b9\u30bf\u30c3\u30af\u306b\u306f\u30bc\u30ed\u304c\u7a4d\u307e\u308c\u308b\u3053\u3068\u306b\u306a\u308a\u307e\u3059\uff0e\u3055\u3089\u306binc\u3067EAX\u30ec\u30b8\u30b9\u30bf\u3092<br \/>\n\u30a4\u30f3\u30af\u30ea\u30e1\u30f3\u30c8\u3059\u308b\u3053\u3068\u3067\uff0cEAX\u306f\u300c\uff11\u300d\u3068\u3044\u3046\u5024\u306b\u306a\u308a\u307e\u3059\uff0e<\/p>\n<p><spacer type=vertical size=50><\/p>\n<h2><a name=\"subsection_6.4\">6.4 \uff12\u53e5\u76ee<\/a><\/h2>\n<p><spacer type=vertical size=25><\/p>\n<p>\u6b21\u306b\uff12\u53e5\u76ee\u306e\uff17\u30d0\u30a4\u30c8\u306e\u90e8\u5206\u3067\u3059\uff0e<\/p>\n<pre><samp>\r\n   5:   68 79 61 6d 61          push   $0x616d6179\r\n   a:   50                      push   %eax\r\n   b:   40                      inc    %eax\r\n<\/samp><\/pre>\n<p>push\u547d\u4ee4\u306b\u3088\u308a\u300c0x616d6179\u300d\u3068\u3044\u3046\uff14\u30d0\u30a4\u30c8\u306e\u5024\u3092\u30b9\u30bf\u30c3\u30af\u306b\u7a4d\u3093\u3067\u3044\u307e\u3059\uff0e<br \/>\n\u3053\u308c\u306fASCII\u30b3\u30fc\u30c9\u3067\u300cyama\u300d\u3068\u3044\u3046\u6587\u5b57\u5217\u306b\u306a\u308a\u307e\u3059\uff0e<br \/>\n\u3064\u307e\u308a\u30b9\u30bf\u30c3\u30af\u4e0a\u306b\uff0c\u300cyama\u300d\u3068\u3044\u3046\u6587\u5b57\u5217\u304c\u7a4d\u307e\u308c\u308b\u3053\u3068\u306b\u306a\u308a\u307e\u3059\uff0e<br \/>\n\u30ea\u30c8\u30eb\u30a8\u30f3\u30c7\u30a3\u30a2\u30f3\u306a\u306e\u3067\uff0c\u9806\u756a\u304c\u9006\u306b\u306a\u3063\u3066\u3044\u308b\u3053\u3068\u306b\u6ce8\u610f\u3057\u3066\u304f\u3060\u3055\u3044\uff0e<\/p>\n<p>\nEAX\u306b\u306f\u3044\u307e\u300c\uff11\u300d\u3068\u3044\u3046\u5024\u304c\u683c\u7d0d\u3055\u308c\u3066\u3044\u307e\u3059\uff0e\uff12\u3064\u76ee\u306epush\u306b\u3088\u3063\u3066EAX\u306e\u5024\uff0c<br \/>\n\u3064\u307e\u308a\u300c\uff11\u300d\u3092\u30b9\u30bf\u30c3\u30af\u306b\u7a4d\u307f\uff0cinc\u306b\u3088\u3063\u3066EAX\u3092\u30a4\u30f3\u30af\u30ea\u30e1\u30f3\u30c8\u3057\u307e\u3059\uff0e<br \/>\n\u3053\u308c\u306b\u3088\u308aEAX\u306e\u5024\u306f\uff12\u306b\u306a\u308a\u307e\u3059\uff0e<\/p>\n<p><spacer type=vertical size=50><\/p>\n<h2><a name=\"subsection_6.5\">6.5 \uff13\u53e5\u76ee<\/a><\/h2>\n<p><spacer type=vertical size=25><\/p>\n<p>\u3055\u3089\u306b\uff13\u53e5\u76ee\u306e\uff15\u30d0\u30a4\u30c8\u306e\u90e8\u5206\u306b\u7d9a\u304d\u307e\u3059\uff0e<\/p>\n<pre><samp>\r\n   c:   6a 08                   push   $0x8\r\n   e:   5a                      pop    %edx\r\n   f:   5b                      pop    %ebx\r\n  10:   40                      inc    %eax\r\n<\/samp><\/pre>\n<p>\u307e\u305a\u30b9\u30bf\u30c3\u30af\u306b\u300c\uff18\u300d\u3068\u3044\u3046\u5024\u3092push\u3057\u3066\u3044\u307e\u3059\uff0e\u305d\u306e\u5f8c\u305d\u308c\u3089\u3092EDX\u3068EBX\u30ec\u30b8\u30b9\u30bf<br \/>\n\u306bpop\u3057\u307e\u3059\uff0e\u3053\u308c\u306b\u3088\u308aEDX\u306b\u306f\u300c\uff18\u300d\uff0cEBX\u306b\u306f\u5148\u307b\u3069\u306eEAX\u306epush\u306b\u3088\u308a\u4fdd\u5b58\u3055\u308c\u305f\u300c\uff11\u300d\u3068\u3044\u3046\u5024\u304c\u30b9\u30bf\u30c3\u30af\u7d4c\u7531\u3067\u683c\u7d0d\u3055\u308c\u308b\u3053\u3068\u306b\u306a\u308a\u307e\u3059\uff0e<br \/>\n\u306a\u304aEAX\u306finc\u547d\u4ee4\u306b\u3088\u3063\u3066\u3055\u3089\u306b\u5897\u52a0\u3057\uff0c\u300c\uff13\u300d\u3068\u3044\u3046\u5024\u306b\u306a\u308a\u307e\u3059\uff0e<\/p>\n<p><spacer type=vertical size=50><\/p>\n<h2><a name=\"subsection_6.6\">6.6 \uff14\u53e5\u76ee<\/a><\/h2>\n<p><spacer type=vertical size=25><\/p>\n<p>\u6b21\u306b\uff14\u53e5\u76ee\u306e\uff17\u30d0\u30a4\u30c8\u306e\u90e8\u5206\u3067\u3059\uff0e<\/p>\n<pre><samp>\r\n  11:   68 57 61 6b 61          push   $0x616b6157\r\n  16:   54                      push   %esp\r\n  17:   40                      inc    %eax\r\n<\/samp><\/pre>\n<p>push\u547d\u4ee4\u306b\u3088\u308a\u300c0x616b6157\u300d\u3068\u3044\u3046\uff14\u30d0\u30a4\u30c8\u5024\u304c\u30b9\u30bf\u30c3\u30af\u306b\u7a4d\u307e\u308c\u307e\u3059\uff0e<br \/>\n\u3053\u308c\u306f\u300cWaka\u300d\u3068\u3044\u3046\u6587\u5b57\u5217\u306b\u306a\u308a\u307e\u3059\u306e\u3067\uff0c\u300cWaka\u300d\u306e\uff14\u6587\u5b57\u304c\u30b9\u30bf\u30c3\u30af\u306b<br \/>\n\u7a4d\u307e\u308c\u308b\u3053\u3068\u306b\u306a\u308a\u307e\u3059\uff0e\u30b9\u30bf\u30c3\u30af\u4e0a\u306b\u306f\u5148\u307b\u3069\u7a4d\u307e\u308c\u305f\u300cyama\u300d\u3068\u3044\u3046<br \/>\n\u6587\u5b57\u5217\u304c\u3042\u308a\u307e\u3059\u306e\u3067\u3053\u308c\u3089\u306f\u9023\u7d50\u3057\uff0c\u300cWakayama\u300d\u3068\u3044\u3046\u6587\u5b57\u5217\u304c<br \/>\n\u7f6e\u304b\u308c\u3066\u3044\u308b\u3053\u3068\u306b\u306a\u308a\u307e\u3059\uff0e<\/p>\n<p>\n\u3055\u3089\u306bESP\u3068\u3044\u3046\u30ec\u30b8\u30b9\u30bf\u306e\u5024\u3092push\u3057\u3066\u3044\u307e\u3059\uff0eESP\u306f\u30b9\u30bf\u30c3\u30af\u30dd\u30a4\u30f3\u30bf\u3067\u3059\uff0e<br \/>\n\u307e\u305fEAX\u30ec\u30b8\u30b9\u30bf\u306finc\u547d\u4ee4\u306b\u3088\u308a\u5897\u52a0\u3057\u300c\uff14\u300d\u3068\u3044\u3046\u5024\u306b\u306a\u308a\u307e\u3059\uff0e<\/p>\n<p><spacer type=vertical size=50><\/p>\n<h2><a name=\"subsection_6.7\">6.7 \uff15\u53e5\u76ee<\/a><\/h2>\n<p><spacer type=vertical size=25><\/p>\n<p>\u30b9\u30bf\u30c3\u30af\u306b\u4fdd\u5b58\u3057\u305fESP\u306e\u5024\u306f\uff0c\u6700\u5f8c\u306e\uff15\u53e5\u76ee\u306e\u5148\u982d\u306epop\u547d\u4ee4\u306b\u3088\u308aECX\u306b<br \/>\n\u623b\u3055\u308c\u307e\u3059\uff0e<\/p>\n<pre><samp>\r\n  18:   59                      pop    %ecx\r\n<\/samp><\/pre>\n<p>\u3053\u306e\u305f\u3081\u30b9\u30bf\u30c3\u30af\u30dd\u30a4\u30f3\u30bf\u306e\u5024\u304c\u30b9\u30bf\u30c3\u30af\u3092\u7d4c\u7531\u3057\u3066ECX\u30ec\u30b8\u30b9\u30bf\u306b\u30b3\u30d4\u30fc\u3055\u308c\u308b<br \/>\n\u3053\u3068\u306b\u306a\u308a\u307e\u3059\uff0e\u30b9\u30bf\u30c3\u30af\u30dd\u30a4\u30f3\u30bf\u306f\u5b9f\u306f\u5148\u307b\u3069\u306e\u300cWakayama\u300d\u3068\u3044\u3046\u6587\u5b57\u5217\u3092<br \/>\n\u6307\u3057\u3066\u3044\u307e\u3059\u306e\u3067\uff0cECX\u306f\u300cWakayama\u300d\u3068\u3044\u3046\u6587\u5b57\u5217\u3092\u6307\u3059\u3053\u3068\u306b\u306a\u308a\u307e\u3059\uff0e<\/p>\n<p>\n\u7d9a\u3051\u3066\uff15\u53e5\u76ee\u3092\u898b\u3066\u3044\u304d\u307e\u3057\u3087\u3046\uff0e<\/p>\n<pre><samp>\r\n  19:   cd 80                   int    $0x80\r\n<\/samp><\/pre>\n<p>\u3053\u308c\u306f\u30b7\u30b9\u30c6\u30e0\u30b3\u30fc\u30eb\u547d\u4ee4\u3068\u3044\u3046\u3082\u306e\u3067\uff0c\u30b7\u30b9\u30c6\u30e0\u30b3\u30fc\u30eb\u3092\u547c\u3073\u51fa\u3057\u307e\u3059\uff0e<br \/>\n\u3053\u308c\u3067Linux\u30ab\u30fc\u30cd\u30eb\u306b\u51e6\u7406\u304c\u6e21\u308a\uff0c\u3042\u3068\u306f\u30ab\u30fc\u30cd\u30eb\u304c\u30b7\u30b9\u30c6\u30e0\u30b3\u30fc\u30eb\u306e\u51e6\u7406\u3092<br \/>\n\u5b9f\u884c\u3057\u307e\u3059\uff0e<\/p>\n<p>\u3055\u3066\u3053\u3053\u3067\uff0c\u30ec\u30b8\u30b9\u30bf\u306e\u5024\u306f\u4ee5\u4e0b\u306e\u3088\u3046\u306b\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u307e\u3059\uff0e<\/p>\n<ul>\n<li>EAX &#8230; \uff14\n<li>EBX &#8230; \uff11\n<li>ECX &#8230; &#8220;Wakayama&#8221;\n<li>EDX &#8230; \uff18\n<\/ul>\n<p>\u305d\u3057\u3066Linux\u306e\u30b7\u30b9\u30c6\u30e0\u30b3\u30fc\u30eb\u306f\uff0cEAX\u30ec\u30b8\u30b9\u30bf\u3067\u30b7\u30b9\u30c6\u30e0\u30b3\u30fc\u30eb\u756a\u53f7\uff0c<br \/>\nEBX\/ECX\/EDX\u3067\u7b2c\uff11\/\uff12\/\uff13\u5f15\u6570\u3092\u6e21\u3059\u3053\u3068\u306b\u306a\u3063\u3066\u3044\u307e\u3059\uff0e<br \/>\n\u30b7\u30b9\u30c6\u30e0\u30b3\u30fc\u30eb\u756a\u53f7\u304c\u300c\uff14\u300d\u306e\u30b7\u30b9\u30c6\u30e0\u30b3\u30fc\u30eb\u306f\uff0cwrite\u30b7\u30b9\u30c6\u30e0\u30b3\u30fc\u30eb\u3067\u3059\uff0e<br \/>\n\u3088\u3063\u3066\u3053\u308c\u306f\u4ee5\u4e0b\u306e\u3088\u3046\u306a\u30b7\u30b9\u30c6\u30e0\u30b3\u30fc\u30eb\u304c\u547c\u3070\u308c\u308b\u3053\u3068\u306b\u306a\u308a\u307e\u3059\uff0e<\/p>\n<pre><samp>\r\nwrite(1, \"Wakayama\", 8);\r\n<\/samp><\/pre>\n<p>\u3053\u308c\u3067\u6a19\u6e96\u51fa\u529b\u306b\u300cWakayama\u300d\u306e\uff18\u6587\u5b57\u304c\u51fa\u529b\u3055\u308c\u308b\u3053\u3068\u306b\u306a\u308a\u307e\u3059\uff0e<\/p>\n<p>\n\u6700\u5f8c\u306f\u5f8c\u59cb\u672b\u3067\u3059\uff0e<\/p>\n<pre><samp>\r\n  1b:   58                      pop    %eax\r\n  1c:   58                      pop    %eax\r\n  1d:   58                      pop    %eax\r\n  1e:   c3                      ret\r\n<\/samp><\/pre>\n<p>\u30b9\u30bf\u30c3\u30af\u4e0a\u306b\u306f&#8221;Wakayama&#8221;\u306e\u6587\u5b57\u5217\u304c\u7f6e\u304b\u308c\u3066\u3044\u307e\u3059\u304c\uff0c\u3053\u308c\u3089\u3092pop\u3067\u56de\u53ce\u3057\uff0c<br \/>\n\u6574\u5408\u3092\u3068\u308a\u307e\u3059\uff0e\u3055\u3089\u306b\uff13\u3064\u76ee\u306epop\u3067\u306f\uff0c\u6700\u521d\u306e\u307b\u3046\u3067\u30b9\u30bf\u30c3\u30af\u306b\u7a4d\u3093\u3067\u304a\u3044\u305f<br \/>\n\u300c\u30bc\u30ed\u300d\u3068\u3044\u3046\u5024\u304cEAX\u30ec\u30b8\u30b9\u30bf\u306b\u8aad\u307f\u8fbc\u307e\u308c\u307e\u3059\uff0e\u3053\u308c\u306b\u3088\u308a\u95a2\u6570\u304b\u3089\u306e\u623b\u308a\u5024<br \/>\n\u3068\u3057\u3066\u300c\u30bc\u30ed\u300d\u304c\u8a2d\u5b9a\u3055\u308c\u307e\u3059\uff0e<\/p>\n<p>\n\u6700\u5f8c\u306b\u300cret\u300d\u547d\u4ee4\u306f\uff0c\u95a2\u6570\u304b\u3089\u623b\u308b\u547d\u4ee4\u3067\u3059\uff0e\u3053\u308c\u3067\u95a2\u6570\u304b\u3089\u8fd4\u308b\u3053\u3068\u306b\u306a\u308a\u307e\u3059\uff0e<\/p>\n<p><spacer type=vertical size=70><\/p>\n<h1><a name=\"section_7\">7 \u4f5c\u54c1\u3092\u9451\u8cde\u3057\u3066\u307f\u3088\u3046<\/a><\/h1>\n<p><spacer type=vertical size=30><\/p>\n<p>\u3053\u306e\u30a2\u30bb\u30f3\u30d6\u30e9\u30fb\u30d7\u30ed\u30b0\u30e9\u30e0\u306fLinux\u306ewrite\u30b7\u30b9\u30c6\u30e0\u30b3\u30fc\u30eb\u306b\u3088\u3063\u3066\u5358\u306b<br \/>\n\u300cWakayama\u300d\u306e\uff18\u6587\u5b57\u3092\u51fa\u529b\u3059\u308b\u3060\u3051\u306e\u3082\u306e\u3067\u3059\uff0e<\/p>\n<p>\n\u304c\uff0c\u5b9f\u306f\u30d7\u30ed\u30b0\u30e9\u30e0\u4e2d\u306b\u306f\uff0c\u4ee5\u4e0b\u306e\u3088\u3046\u306a\u5de5\u592b\u304c\u5165\u308c\u8fbc\u307e\u308c\u3066\u3044\u307e\u3059\uff0e<\/p>\n<ul>\n<li>write\u30b7\u30b9\u30c6\u30e0\u30b3\u30fc\u30eb\u756a\u53f7\u306e\u300c\uff14\u300d\u3068\u3044\u3046\u5024\u3092\u751f\u6210\u3059\u308b\u306e\u306b\uff14\u3064\u306einc\u547d\u4ee4\u3092<br \/>\n    \u4f7f\u3063\u3066\u3044\u308b\uff0e<\/p>\n<li>\u3055\u3089\u306b\u305d\u308c\u3089\u3092\u5404\u53e5\u306e\u672b\u5c3e\u306b\u914d\u7f6e\u3059\u308b\u3053\u3068\u3067\uff0c\u5404\u53e5\u306e\u672b\u5c3e\u3067\u97fb\u3092\u3075\u3093\u3067\u3044\u308b\uff0e<br \/>\n  (\u6700\u521d\u306b\u3042\u3052\u305f\u300c\u590f\u4f11\u307f\u300d\u306e\u30c0\u30f3\u30d7\u3067\uff0c\u5404\u53e5\u306e\u672b\u5c3e\u304c\u300c40\u300d\u306b\u306a\u3063\u3066\u3044\u308b\u3053\u3068\u306b\u6ce8\u76ee)\n<\/ul>\n<p>\u672c\u6765\uff0cEAX\u306b\u300c\uff14\u300d\u3068\u3044\u3046\u5024\u3092\u683c\u7d0d\u3059\u308b\u306b\u306f\u76f4\u63a5\u4ee3\u5165\u3057\u3066\u3057\u307e\u3063\u3066\u3082\u69cb\u308f\u306a\u3044\u306e\u3067\u3059\u304c\uff0c\u97fb\u3092\u8e0f\u3080\u305f\u3081\u306b\u3042\u3048\u3066\uff14\u3064\u306einc\u547d\u4ee4\u3092\u547c\u3093\u3067\u3044\u308b\u308f\u3051\u3067\u3059\uff0e<\/p>\n<p>\n\u3082\u3046\u4e00\u5ea6\uff0c\u4f5c\u54c1\u300c\u590f\u4f11\u307f\u300d\u306e\u30d0\u30a4\u30c8\u30b3\u30fc\u30c9\u3092\u898b\u3066\u307f\u307e\u3057\u3087\u3046\uff0e<br \/>\n\u5404\u53e5\u306e\u7d42\u7aef\u306b\u6ce8\u76ee\u3057\u3066\u304f\u3060\u3055\u3044\uff0e\u300c40\u300d\u3067\u97fb\u304c\u8e0f\u307e\u308c\u3066\u3044\u308b\u3053\u3068\u304c\u308f\u304b\u308b\u3067\u3057\u3087\u3046\u304b\uff0e<\/p>\n<pre><code>\r\n6a 00 58 50 40\r\n68 79 61 6d 61 50 40\r\n6a 08 5a 5b 40\r\n68 57 61 6b 61 54 40\r\n59 cd 80 58 58 58 c3\r\n<\/code><\/pre>\n<p>\u5358\u306a\u308b\u6587\u5b57\u5217\u51fa\u529b\u306e\u30d7\u30ed\u30b0\u30e9\u30e0\u3067\u306f\u306a\u304f\uff0c\u3053\u306e\u3088\u3046\u306b\u8da3\u5411\u3092\u51dd\u3089\u3057\u3066\u5473\u308f\u3044\u6df1\u3055\u3092<br \/>\n\u8ffd\u6c42\u3059\u308b\u3082\u306e\u304c\u300c\u30a2\u30bb\u30f3\u30d6\u30e9\u77ed\u6b4c\u300d\u3067\u3059\uff0e<\/p>\n<p>\n\u305d\u3057\u3066\u4f5c\u54c1\u300c\u590f\u4f11\u307f\u300d\u306b\u306f\uff0c\u4ee5\u4e0b\u306e\u3088\u3046\u306a\u7dcf\u8a55\u3092\u3057\u3066\u3044\u307e\u3059\uff0e<br \/>\n\u300c\u590f\u4f11\u307f\u300d\u3068\u3044\u3046\u30bf\u30a4\u30c8\u30eb\u306e\u610f\u5473\u304c\u304a\u308f\u304b\u308a\u3044\u305f\u3060\u3051\u308b\u3067\u3057\u3087\u3046\u304b\uff0e<\/p>\n<table border=1>\n<tr>\n<td>\n\u6700\u521d\u306b\u30bc\u30ed\u8a2d\u5b9a\u3057\u305fEAX\u304cinc\u547d\u4ee4\u3067\uff11\u305a\u3064\u5897\u52a0\u3057\u3066\u3044\u304f\u969b\u306b\uff0c\u305d\u306e\u5024\u3092\u6d41\u7528\u3057\u3066<br \/>\nEBX\u3084\u623b\u308a\u5024\u306eEAX\u3092\u8a2d\u5b9a\u3057\u3066\u3044\u304f\u3055\u307e\u306f\uff0c\u6d41\u308c\u308b\u5c0f\u5ddd\u306e\u305b\u305b\u3089\u304e\u306e\u3088\u3046\u3067\u3059\uff0e<br \/>\n\u307e\u305f\u30cb\u30fc\u30e2\u30cb\u30c3\u30af\u3092\u898b\u308b\u3068\u300cpush-pop-push-inc, push-push-inc\u300d<br \/>\n\u300cpush-pop-pop-inc, push-push-inc\u300d\u3068\u3044\u3046\u30b9\u30ad\u30c3\u30d7\u3059\u308b\u3088\u3046\u306a\u30ea\u30ba\u30e0\u304c\u3042\u308a\uff0c<br \/>\n\u5c0f\u5ddd\u306e\u307b\u3068\u308a\u3067\u904a\u3076\u5b50\u4f9b\u305f\u3061\u306e\u60c5\u666f\u304c\u6d6e\u304b\u3093\u3067\u304d\u307e\u3059\uff0e\u3053\u306e\u305f\u3081\u300c\u590f\u4f11\u307f\u300d\u3068\u3044\u3046<br \/>\n\u30bf\u30a4\u30c8\u30eb\u306b\u3057\u307e\u3057\u305f\uff0e<br \/>\n<br \/>\n\u6700\u5f8c\u306b\u540c\u3058pop\u304c\u9023\u7d9a\u3057\u3066\u3044\u308b\u3053\u3068\u306f\u3044\u3064\u307e\u3067\u3082\u7d9a\u304f\u304b\u306e\u3088\u3046\u306a\u4f59\u97fb\u304c\u611f\u3058\u3089\u308c\uff0c<br \/>\n\u3057\u304b\u3057\u3044\u3064\u304b\u306f(ret\u3067)\u7d42\u308f\u3063\u3066\u3057\u307e\u3046\u3068\u3044\u3046\u306f\u304b\u306a\u3055\u3082\u3042\u308a\uff0c\u300c\u590f\u4f11\u307f\u300d\u3068\u3044\u3046<br \/>\n\u30c6\u30fc\u30de\u304c\u3088\u304f\u8868\u73fe\u3055\u308c\u3066\u3044\u307e\u3059\uff0e<br \/>\n<br \/>\n\u5404\u53e5\u304c40\u3068\u3044\u3046\u30d0\u30a4\u30c8\u30b3\u30fc\u30c9\u3067\u7d42\u4e86\u3059\u308b\u3053\u3068\u3067\u97fb\u3092\u8e0f\u3093\u3067\u3044\u308b\u3053\u3068\u3082\u5c0f\u6c17\u5473\u3088\u304f\uff0c<br \/>\n\u547d\u4ee4\u8abf\u6574\u306e\u305f\u3081\u306e\u5b89\u6613\u306anop\u304c\u7121\u3044\u3053\u3068\u3082\u723d\u3084\u304b\u306b\u611f\u3058\u3089\u308c\u307e\u3059\uff0e\n<\/td>\n<\/tr>\n<\/table>\n<p><spacer type=vertical size=70><\/p>\n<h1><a name=\"section_8\">8 \u304a\u308f\u308a\u306b<\/a><\/h1>\n<p><spacer type=vertical size=30><\/p>\n<p>\u3044\u304b\u304c\u3060\u3063\u305f\u3067\u3057\u3087\u3046\u304b\uff0e<\/p>\n<p>\n\u30a2\u30bb\u30f3\u30d6\u30e9\u77ed\u6b4c\u306f31\u30d0\u30a4\u30c8\u3068\u3044\u3046\u77ed\u3044\u30b5\u30a4\u30ba\u3067\u30d7\u30ed\u30b0\u30e9\u30e0\u3092\u66f8\u304f\u305f\u3081\uff0c<br \/>\n\u30a2\u30bb\u30f3\u30d6\u30e9\u30fb\u30b3\u30fc\u30c7\u30a3\u30f3\u30b0\u306e\u7df4\u7fd2\u7528\u306e\u624b\u8efd\u306a\u984c\u6750\u3068\u3057\u3066\u6271\u3048\u307e\u3059\uff0e<br \/>\n\u3053\u306e\u305f\u3081\uff0c\u30a2\u30bb\u30f3\u30d6\u30e9\u5b66\u7fd2\u306e\u5165\u9580\u5411\u3051\u3068\u3057\u3066\u826f\u3044\u6559\u6750\u306b\u306a\u308b\u306e\u3067\u306f\u306a\u3044\u304b\u3068<br \/>\n\u601d\u3063\u3066\u3044\u307e\u3059\uff0e<\/p>\n<p>\n\u521d\u5fc3\u8005\u304c\u5b66\u7fd2\u3059\u308b\u305f\u3081\u306b\u306f\uff0c\u6559\u79d1\u66f8\u3068\u306a\u308b\u66f8\u7c4d\u304c\u5fc5\u8981\u3067\u3059\uff0e\u305d\u306e\u3088\u3046\u306a\u308f\u3051\u3067\uff0c<br \/>\n\u300c31\u30d0\u30a4\u30c8\u3067\u3064\u304f\u308b\u30a2\u30bb\u30f3\u30d6\u30e9\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0 \u301c\u30a2\u30bb\u30f3\u30d6\u30e9\u77ed\u6b4c\u306e\u4e16\u754c\u301c\u300d<br \/>\n\u3068\u3044\u3046\u66f8\u7c4d\u304cSECCON\u95a2\u4fc2\u8005\u306b\u3088\u3063\u3066\u57f7\u7b46\u3055\u308c\u3066\u3044\u307e\u3059\uff0e<\/p>\n<p>\n<center><br \/>\n<a href=\"http:\/\/www.ospn.jp\/press\/20140328no38-useit-oss.html\/book\" rel=\"attachment wp-att-24805\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.ospn.jp\/press\/wp-content\/uploads\/2014\/03\/book.jpg\" alt=\"book\" width=\"400\" height=\"300\" class=\"alignnone size-full wp-image-24805\" \/><\/a><\/p>\n<p>\n<a name=\"fig_book\">\u56f38.1: 31\u30d0\u30a4\u30c8\u3067\u3064\u304f\u308b\u30a2\u30bb\u30f3\u30d6\u30e9\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0 \u301c\u30a2\u30bb\u30f3\u30d6\u30e9\u77ed\u6b4c\u306e\u4e16\u754c\u301c<\/a><br \/>\n<\/center><\/p>\n<ul>\n<li><a href=\"https:\/\/book.mynavi.jp\/ec\/products\/detail\/id=24267\">(\u30de\u30a4\u30ca\u30d3) https:\/\/book.mynavi.jp\/ec\/products\/detail\/id=24267<\/a>\n<li><a href=\"http:\/\/tatsu-zine.com\/books\/assenbly-language-programing-tanka\">(\u9054\u4eba\u51fa\u7248\u4f1a) http:\/\/tatsu-zine.com\/books\/assenbly-language-programing-tanka <\/a>\n<\/ul>\n<p>\n\u307e\u305f\u30a2\u30bb\u30f3\u30d6\u30e9\u77ed\u6b4c\u304c\u6c17\u8efd\u306b\u8a66\u305b\u308bWeb\u30da\u30fc\u30b8\u300cAssembler Tanka on Javascript\u300d<br \/>\n\u304c\u8457\u8005\u306e\u3072\u3068\u308a\u3067\u3042\u308b\u611b\u7532\u5065\u4e8c\u3055\u3093\u306b\u3088\u3063\u3066\u4f5c\u6210\u3055\u308c\u3066\u3044\u307e\u3059\uff0e<\/p>\n<p>\n<a href=\"http:\/\/07c00.com\/asmtanka_on_js\/\">http:\/\/07c00.com\/asmtanka_on_js\/<\/a><\/p>\n<p>\n\u300c\u30b9\u30de\u30d5\u30a9\u3067\u6c17\u8efd\u306b\u30a2\u30bb\u30f3\u30d6\u30e9\u77ed\u6b4c\u300d\u304c\u30a6\u30ea\u6587\u53e5\u3067\u3059\u306e\u3067\uff0c<br \/>\n\u305c\u3072\u904a\u3073\u611f\u899a\u3067\u6c17\u8efd\u306b\u8a66\u3057\u3066\u307f\u3066\u306f\u3044\u304b\u304c\u3067\u3057\u3087\u3046\u304b\uff1f<\/p>\n<p><\/body><br \/>\n<\/html><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u30a2\u30bb\u30f3\u30d6\u30e9\u77ed\u6b4c \u30a2\u30bb\u30f3\u30d6\u30e9\u77ed\u6b4c KOZOS\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u4ee3\u8868\u5742\u4e95\u5f18\u4eae(\u3055\u304b\u3044\u30fb\u3072\u308d\u3042\u304d) \u76ee\u6b21 1 \u30a2\u30bb\u30f3\u30d6\u30e9\u77ed\u6b4c\u3068\u306f\u4f55\u304b\uff1f 2 \u30aa\u30fc\u30d7\u30f3\u30bd\u30fc\u30b9\u3067\u3059 3 \u30bb\u30df\u30ca\u30fc\u3084\u30a4\u30d9\u30f3\u30c8\u304c\u884c\u308f\u308c\u3066\u3044\u307e\u3059 4 \u30b3\u30f3\u30c6\u30b9\u30c8\u304c\u884c\u308f\u308c\u3066\u3044\u307e\u3059  [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[9],"tags":[],"class_list":["post-24747","post","type-post","status-publish","format-standard","hentry","category-use-it-oss"],"_links":{"self":[{"href":"https:\/\/www.ospn.jp\/press\/wp-json\/wp\/v2\/posts\/24747","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.ospn.jp\/press\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.ospn.jp\/press\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.ospn.jp\/press\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/www.ospn.jp\/press\/wp-json\/wp\/v2\/comments?post=24747"}],"version-history":[{"count":71,"href":"https:\/\/www.ospn.jp\/press\/wp-json\/wp\/v2\/posts\/24747\/revisions"}],"predecessor-version":[{"id":25641,"href":"https:\/\/www.ospn.jp\/press\/wp-json\/wp\/v2\/posts\/24747\/revisions\/25641"}],"wp:attachment":[{"href":"https:\/\/www.ospn.jp\/press\/wp-json\/wp\/v2\/media?parent=24747"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.ospn.jp\/press\/wp-json\/wp\/v2\/categories?post=24747"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.ospn.jp\/press\/wp-json\/wp\/v2\/tags?post=24747"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}