{ "version": "https://jsonfeed.org/version/1", "title": "0x10c", "description": "Minecraft \u4f5c\u8005 notch \u66fe\u7ecf\u7684\u4e00\u4e2a\u65b0\u60f3\u6cd5\uff0c\u73b0\u5728\u5df2\u7ecf\u6210\u4e3a\u8fc7\u53bb", "home_page_url": "go/0x10c", "feed_url": "feed/0x10c.json", "icon": "https://cdn.v2ex.com/navatar/2bb2/32c0/523_large.png?m=1643941216", "favicon": "https://cdn.v2ex.com/navatar/2bb2/32c0/523_normal.png?m=1643941216", "items": [ { "author": { "url": "member/FeifeiJin", "name": "FeifeiJin", "avatar": "https://cdn.v2ex.com/avatar/c06e/d39e/201709_large.png?m=1776357018" }, "url": "t/1032528", "title": "\u5173\u4e8e\u65e5\u672c\ud83c\uddef\ud83c\uddf5\u548c\u56fd\u5185\u5c0f\u75c5\u533b\u7597\u7684\u7591\u95ee\u548c\u63a2\u8ba8", "id": "t/1032528", "date_published": "2024-04-15T02:22:44+00:00", "content_html": "\u4e0a\u5468\u56db\u6241\u6843\u4f53\u53d1\u708e\uff0c\u53d1\u70e7\u5230 38\u00b05 \uff0c\u7acb\u523b\u9884\u7ea6\u5bb6\u9644\u8fd1\u7684\u8bca\u6240 A \u3002\u770b\u5b8c\u4e4b\u540e\u7ed9\u5f00\u4e86\u4e00\u5806\u836f\uff0c\u7ed3\u679c\u8d8a\u5403\u70e7\u7684\u8d8a\u5389\u5bb3\uff0c\u5468\u4e00\u51cc\u6668\u76f4\u63a5\u70e7\u5230 40\u00b0\uff0c\u6253\u4e86\u65e5\u672c 119 \uff0c\u7ed9\u6211\u62c9\u53bb\u75c5\u9662 B \u6302\u70b9\u6ef4\uff0c\u8c22\u5929\u8c22\u5730\u6302\u4e86\u534a\u5c0f\u65f6\u70b9\u6ef4\u4e4b\u540e\uff0c\u8fd8\u6709\u534a\u888b\u6ca1\u6302\u5b8c\uff0c\u5c31\u88ab\u533b\u751f\u62d4\u9488\u8bf4\u4f60\u53ef\u4ee5\u8d70\u4e86\u3002\u662f\u8212\u670d\u4e86\u4e00\u4e36\u4e36\uff0c\u56de\u5230\u5bb6\u7761\u4e86 5 \u5c0f\u65f6\uff0c\u4f53\u6e29\u53c8\u56de\u5230 40\u00b0\uff0c\u9042\u6253\u7535\u8bdd\u54a8\u8be2\u75c5\u9662 B,\u4ed6\u8ba9\u6211\u627e\u5176\u4ed6\u8bca\u6240\uff0c\u5b8c\u7f8e\u8e22\u76ae\u7403\uff0c\u9042\u6253\u7535\u8bdd\u7ed9\u8bca\u6240 A \uff0c\u8ba9\u4ed6\u7ed9\u6211\u5f00\u75c5\u9662\u7684\u4ecb\u7ecd\u4fe1\uff0c\u8bf4\u4e0d\u6253\u9488\u6839\u672c\u6cbb\u4e0d\u597d\u6241\u6843\u4f53\u5316\u8113\uff0c\u7ea6\u4e86\u4e0b\u5348 1 \u70b9 10 \u5206\u590d\u8bca\u5f00\u4fe1\uff0c\u5e0c\u671b\u80fd\u987a\u5229\u5f00\u5230\u4ecb\u7ecd\u4fe1\uff0c\u987a\u5229\u53bb\u533b\u9662\u6302\u6c34\u3002



\u90a3\u4e48\u95ee\u9898\u5c31\u6765\u4e86\uff0c\u5728\u56fd\u5185\u6211\u7684\u6241\u6843\u4f53\u4e5f\u7ecf\u5e38\u6027\u5316\u8113\uff0c\u6211\u76f4\u63a5\u6253\u8f66\u53bb\u6df1\u5733\u5357\u5c71\u533b\u9662\u6025\u8bca\uff0c\u6ce8\u5c04\u5934\u5b62\uff0c\u7acb\u9a6c\u56de\u590d\u5143\u6c14\u3002



\u60f3\u5728\u8fd9\u91cc\u8ba8\u8bba\uff0c\u65e5\u672c\u7684\u5c0f\u75c5\u533b\u7597\u5236\u5ea6\u5c31\u4f18\u4e8e\u56fd\u5185\u5417\uff0c\u5bf9\u4e8e\u514d\u75ab\u529b\u4f4e\u7684\u4eba\uff0c\u5403\u836f\u6839\u672c\u5c31\u53ea\u662f\u5b89\u6170\u5242\u3002



\u6211\u4e2a\u4eba\u4f53\u611f\u6765\u8bf4 \uff0c\u6bcf\u6b21\u5728\u65e5\u672c\u6241\u6843\u4f53\u53d1\u708e\uff0c\u5316\u8113\u6211\u90fd\u8ba4\u4e3a\u8fd9\u4e2a\u56fd\u5bb6 sucks \u3002



\u4ee5\u53ca\u884d\u751f\u8ba8\u8bba\uff0c\u897f\u65b9\u56fd\u5bb6\u90fd\u662f\u8fd9\u6837\u5417\uff0c\u5c0f\u75c5\u76f4\u63a5\u53ef\u4ee5\u628a\u4eba\u62d6\u5230\u538c\u4e16\uff1f" }, { "author": { "url": "member/freewizard", "name": "freewizard", "avatar": "https://cdn.v2ex.com/avatar/69c4/18c3/10561_large.png?m=1686238004" }, "url": "t/33668", "title": "DCPU-16 1.1", "id": "t/33668", "date_published": "2012-04-26T06:52:33+00:00", "content_html": "
http://www.reddit.com/r/dcpu16/comments/sqfre/rfe_dcpu16_11/


Swapped the names of \"a\" and \"b\" to make it more clear what gets processed first, and to make special opcodes not have only a b value.
Added a very basic interrupt handler
Outlined some hardware detection basics
Made the text 80 characters wide because 80's
Implemented ALL of following:

DCPU-16 Spec Suggestions
=======================

1. Evaluate b before a
----------------------------------------------
This makes instructions that address the stack twice meaningful instead of confusing and useless.

`ADD PEEK, POP` *should* pop the top of the stack and add it to the second entry, but currently the `PEEK` is evaluated before the `POP` occurs.

2. Add [SP+next word] addressing
----------------------------------------------
This makes writing functions that store extra variables or arguments on the stack easier.

POP isn't useful as an a value, and PUSH isn't useful as a b value, so they should be combined into one value, with postincrement and predecrement determined by whether they're in a/b.

3. Make opcodes 5 bits
--------------------------------
A literal a value is not very useful, and having 2x more opcodes is very useful.
bbbbbbaaaaaaoooo
becomes
bbbbbbaaaaaooooo

4. Make literal range include -1.
-----------------------------------
Shift the literal range from [0, 31] to [-1, 30].

Having -1 as a literal lets you useful one-word instructions like:
``` NEG X --> MUL X, -1
NOT X --> XOR X, -1```

5. Rename O register to EX or OV
-------------------------------------
O and 0 are very easy to confuse, other special registers are two characters, and it doesn't always represent overflow.

6. Add signed MUL/DIV instructions
--------------------------------------
Signed operations make maneuvers, targeting, and fixed-point trigonometry routines more efficient.

Suggested mnemonics: `MLI`, `DVI`.

7. Add signed right shift (ASR)
-----------------------------------------
Signed operations are useful.

8. Add additional IF instructions
------------------------------------
Supporting all the relations (<, >, <=, >=) will make assembly easier to write and read. Suggested mnemonics and effects:

0x11: IFB a, b - performs next instruction only if (a&b)!=0 (Bit set)
0x12: IFE a, b - performs next instruction only if a==b (Equal)
0x13: IFN a, b - performs next instruction only if a!=b (Not equal)
0x14: IFG a, b - performs next instruction only if a>b (signed) (Greater)
0x15: IFA a, b - performs next instruction only if a>b (unsigned) (Above)
0x16: IFL a, b - performs next instruction only if a<b (signed) (Less)
0x17: IFU a, b - performs next instruction only if a<b (unsigned) (Under)


Appendix A.
===========
1. Fix line drawing characters
------------------------------
As [jecowa noted on reddit](http://www.reddit.com/r/dcpu16/comments/sio8u/dcpu_font_help_what_are_those_first_30ish_glyphs/c4ekx9u), you can't make full boxes with the current line drawing characters.

These 22 glyphs let you draw boxes:

\u2502\u2500\u2514\u250c\u2510\u2518\u2534\u251c\u252c\u2524\u253c

\u2551\u2550\u255a\u2554\u2557\u255d\u2569\u2560\u2566\u2563\u256c

Suggestions for extra 5 glyphs:

\u00b0 (Degree) and \u2660\u2665\u2666\u2663 (Card suits)

Note that the full block \u2588 with fg color X is equivalent to space with bg X. Replace it with a dithered \u2592 half-block." }, { "author": { "url": "member/feilaoda", "name": "feilaoda", "avatar": "https://cdn.v2ex.com/avatar/08ae/6a26/9577_large.png?m=1378983882" }, "url": "t/32468", "date_modified": "2012-04-22T14:02:04+00:00", "content_html": "\u4e00\u4e2a16\u4f4d\u7684CPU\uff0c\u5230\u5e95\u8981\u5e72\u5565\uff1f\u8981\u626e\u6f14\u4e0a\u5e1d\u521b\u9020\u4e00\u5207\u4e48\uff1f\r\n
\u4e3a\u5565\u641e\u4e00\u4e2a\u8fd9\u6837\u7684\u6e38\u620f\u6765\uff1f", "date_published": "2012-04-17T07:08:05+00:00", "title": "\u8c01\u80fd\u4ecb\u7ecd\u4e00\u4e0b0x10c\u5230\u5e95\u795e\u5947\u5728\u4ec0\u4e48\u5730\u65b9\uff1f", "id": "t/32468" }, { "author": { "url": "member/aligo", "name": "aligo", "avatar": "https://cdn.v2ex.com/avatar/bcbe/3365/222_large.png?m=1698726742" }, "url": "t/31490", "date_modified": "2019-04-12T06:19:40+00:00", "content_html": "\u5927\u6982\u4e00\u4e2a\u6708\u524d\u6211\u505a\u4e86\u4e00\u4e2a\u8fd9\u6837\u7684\u4e1c\u897f\uff1a t/28870
\u7136\u540e\u5c31\u4e22\u5728\u4e00\u8fb9\u4e86\u3002\u3002\u3002

\u56e7

\u6709\u4eba\u60f3\u4e00\u8d77\u6765\u7ee7\u7eed\u505a\u8fd9\u4e2a\u4e1c\u897f\u5417\u3002\u3002\u3002", "date_published": "2012-04-06T01:31:58+00:00", "title": "\u6709\u79cd\u649e\u8f66\u7684\u8d76\u811a", "id": "t/31490" }, { "author": { "url": "member/Livid", "name": "Livid", "avatar": "https://cdn.v2ex.com/avatar/c4ca/4238/1_large.png?m=1778878691" }, "url": "t/31478", "date_modified": "2012-04-22T03:10:01+00:00", "content_html": "http://0x10cforum.com/forum/m/4932880/viewthread/2702855-game-screenshot", "date_published": "2012-04-05T21:29:51+00:00", "title": "0x10c \u6700\u521d\u7684\u4e00\u4e9b\u5c4f\u5e55\u622a\u56fe", "id": "t/31478" }, { "author": { "url": "member/Livid", "name": "Livid", "avatar": "https://cdn.v2ex.com/avatar/c4ca/4238/1_large.png?m=1778878691" }, "url": "t/31428", "date_modified": "2012-04-22T18:25:59+00:00", "content_html": "http://pypi.python.org/pypi/0x10c-asm/0.0.2\r\n
\r\n
Python \u7248\u672c\u7684\u5b9e\u73b0\u4e5f\u51fa\u6765\u4e86\u3002", "date_published": "2012-04-05T09:25:26+00:00", "title": "0x10c-asm", "id": "t/31428" }, { "author": { "url": "member/virushuo", "name": "virushuo", "avatar": "https://cdn.v2ex.com/avatar/ad0f/7a25/6571_large.png?m=1425106679" }, "url": "t/31371", "date_modified": "2012-04-22T16:33:46+00:00", "content_html": "http://0x10c.com/doc/dcpu-16.txt\r\n
\r\n
\u7136\u540e\u77ac\u95f4\u5c31\u6709\u4eba\u505a\u51fa\u6765\u4e86\u6a21\u62df\u5668\u2026\r\n
\r\n
https://github.com/swetland/dcpu16", "date_published": "2012-04-04T18:38:37+00:00", "title": "\u8fd9\u4e2a0x10c\u5f04\u7684cpu\u770b\u7740\u8fd8\u633a\u771f\u7684\u561b", "id": "t/31371" } ] } ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86