Created
October 21, 2015 18:43
-
-
Save Otto42/b520710eb40bf95bde12 to your computer and use it in GitHub Desktop.
-- HUMAN RESOURCE MACHINE PROGRAM -- -- 41 Sorting Floor - Basic Bubble Sort --
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
-- HUMAN RESOURCE MACHINE PROGRAM -- | |
-- 41 Sorting Floor - Basic Bubble Sort -- | |
-- Does not achieve any records, but demonstrates the principle of a bubble sort. -- | |
-- Explanation -- | |
-- Each element is copied to the floor until a zero is reached. -- | |
-- CMP is set to the max elements location. -- | |
-- CMP 2 is decremented and each element compared. If the result is not negative, the elements are swapped, using TMP as a temporary holding area. -- | |
-- Once CMP 2 becomes negative, CMP is decreased and the loop repeated. -- | |
-- Thus, higher numbers "bubble" to the top, sorting the floor. -- | |
-- When CMP becomes zero, the sort is complete, and the floor contents are output. -- | |
-- To handle the final "single element" case, the bubble sort is skipped entirely and it goes straight to the output. -- | |
a: | |
COPYFROM 24 | |
COPYTO 23 | |
COMMENT 2 | |
b: | |
INBOX | |
JUMPZ c | |
COPYTO [23] | |
BUMPUP 23 | |
JUMP b | |
c: | |
COPYFROM 23 | |
COPYTO 22 | |
BUMPDN 22 | |
COPYTO 21 | |
BUMPDN 21 | |
JUMPN i | |
COMMENT 1 | |
d: | |
e: | |
COPYFROM [22] | |
SUB [21] | |
JUMPN f | |
COMMENT 3 | |
COPYFROM [22] | |
COPYTO 20 | |
COPYFROM [21] | |
COPYTO [22] | |
COPYFROM 20 | |
COPYTO [21] | |
f: | |
BUMPDN 21 | |
JUMPN g | |
JUMP e | |
g: | |
BUMPDN 22 | |
JUMPZ h | |
COPYTO 21 | |
BUMPDN 21 | |
JUMP d | |
h: | |
i: | |
COMMENT 0 | |
j: | |
BUMPDN 23 | |
JUMPN a | |
COPYFROM [23] | |
OUTBOX | |
JUMP j | |
DEFINE COMMENT 0 | |
eJyrYGBgsJfmVnaXOKf3XJTB4bmoqoe4eJK/tqRd1Gepu7Gb5ZOTvislJ/lrfI15rtEeXq952Lte08Du | |
ucYkq9vKHlqrlSo1XstWagCNYThuoqwkbFrl9930Qsh7C7Xo59Zq0dEOhoHdjoe92Z0TbdidlZVA6sQD | |
rBWPRYUohMXNlQXx2cJWqgWFHfbeFWqUAuLH5YlJrspbEw9iO+Wflc4qjhdbVlkhGlTzTKqpdqL6q5pc | |
I7sqT1uuQgaHvvzzjiB1WW3u4tvaJqq3td42b2v94rmtzTv5VMfOjLy+BZlSE6VSvSatiV815bD3qinx | |
YiD1H+frS5gu/id5cp2YJIifuiREQXKJWjSIva5MYKpbuencSeUnL3yq3HhRr+HR+Wft2mfFOmNOg+Tl | |
ZtbNWjQ9bXbfVMdlcVP81h+bbH541ZSrx6xmlJxKnNNzUnMe29Gl83/utl2guZx3vu+cZ7MiJ4H0aW6M | |
nJS4PnLSxdXTZu5d6bf+5ooN+1RXXj12cXXPybsbek5Kbmc7GrvryubYXaZzp+4QmKq4pXDi0k2ve0B6 | |
A0/s6pt74uEe1hMzL4H4O49HTpp7YlG/4FmTLs4LJl2yly73/rz6Zr7rNa1dhlce7lE9f3Kv7hmnnQyj | |
YBQQAAB+hsbT; | |
DEFINE COMMENT 1 | |
eJxbxMDAsF2EW3m7yLEWBjB7ahuI9hflVv4tniPfLT1XVlhprqy6So68vPpKNWaNUON2tUlW+1Uk7DfL | |
83jel1D1KJe84+WsLBlkrTY/TF49LHK7+pr4es1LVfWa/E3vVWW6i1WYe5rlZLqNxb43gcy+bXZLhdsi | |
1yjcQi2v3fJes7914URxW40pk+00phy2j5zU7Ti1LdhZLe+1s1r0a+e5smB3+W6VEQ8wDEwOkOkG8U/7 | |
t8gdDjornRaxVaYqylpRLTbXqCg21O1WDI+nV2SS/+fgCyFekfPD4qJ5Y9riHRq44u41V0XVtjeFp3Zc | |
D4H4US/3rLReroHdv2y16Gk5EHMf5WyVUStYIexWflOwrOKgkF2VvoRZbaXGq5r/OssqV1kalT53CCs8 | |
72hV1OZSV2rrrlVx2HtZpWGgXdWO0K6qb/nLKqcUWxWpN67KU28EmZfUKSaZ1JlS6tZlXH5rqncZSGzp | |
fH0J2wVzZXMXSgblLlxbBBI7OG+rTOgqMUkQe+4iVQ/OVbbuIDbropTSt6tqSkBsp6mmc+f1X17wqzNt | |
nVvXlc1l3cXb5/U/3LNv2oZ9i6bvPb5oesPlvqn7bv2bWHqXrT/m3qeefbdA+lYu952TuuTEqrmLone8 | |
XFRyqnGx0LmpS2declyRcWXrmobLa9f/Ose76d3RyE0b9h3cuGSr79qopZar38wvXMkyH6Sfc6/A1Ld7 | |
92x5u/fdDRg/dG/hRNn9i/oPHtnVd/VY5KSXJ1jmm56sX7vzePSOyKMn9/oemLEfpJbxgNDuqaczroDY | |
rtdMum4+lOn+8cKnE8SvvH+5t/J+1+Leh9pnGUbBgAEAvjoIqA; | |
DEFINE COMMENT 2 | |
eJzLYGBguMD9T7Jb+pkUkMlgLWytuF8w0Wa/oHcyiB/DvjPjsOTODBB7sWpHFrfqyzRuVd4YefVbKtvV | |
QxSStSo1/htdCGm3LMj2t55kJW47UV3cVl8CpL7YS19itYeKab8nxCxu77PS/n4TRNYHrBC2DxGTzAvd | |
KjMv7Jze8uBEm9P+EvYgNb+SVwgbJR22qEvyCviVfCTOLt07mS0zOelftlq0Xu6L4Krc847Tcjy0puW4 | |
i4PUu5VXiE6rdxfPaosXA/Hn1ZyVzqtWMc2rnpIAka9tdyt32qlVIX+dq2XmJZCY09SpbecmOE42m3B/ | |
2rz+7m1ek9iO3pq69/isWQ0HEufs2ZI45/60WbNMui7NONYCUs+49ntT6+p7zYUrfTp1l02bmbqkfu3f | |
JQ0HBJcvPcG56te5xPUbL07csPHizi0NB+ZuLd4+d+v61YpbTOfyboqc9HP9656na026QOa83aveeHHf | |
sRbfA7sXbt2/8SJILHTv96aZBxbWXD12qeromWMtjucW9Tueuz/t4emiJWsPyW5kGAWjgMYAABhyrK8; | |
DEFINE COMMENT 3 | |
eJzzYWBg2G71XDfe9Lmusn6robs2j9lqpST/44rzw44rHolzVvZOble7mL5cVy1vst3aotfO6o3Srsw9 | |
0q4/pu52kpmXbPtjxXfTK5u1dU7ufa4xY/93pRn7gUYyyPt+NtvuO9lXO4i553Pw203KoRv2RaVJpaZl | |
T7LyyvFOjssrnHgrf/fCWSVau+6Vr1/NV7l74aY6qdSqhsPeVQ0GdiAz5vV/NjObYOue1Sa0G8TfNDHU | |
mGt6e3jdbIeGqwsEV1Qug9jV1cvcA6L5eky6Fk2X6QaxV+76r+O54/40zx3d23R3lt4FifXutjFhPPBf | |
5+qxQ6q6Zw6pvr3wX8fwyjb9n1dXWbpee+7ges0rYO3V+WGyl4xS3l6wz1159lVl7vF7zUuPHmsxPOjQ | |
cHO3QwPDKBgFwwwAANfFhK4; | |
DEFINE LABEL 20 | |
eJxTY2BgUPc6bNEU7ml7K8bTVimDxwwoxFAVtd1pVXRBXVWU2QYQv6jg5F654mkzZ5VcqnIrr9RYVrlN | |
X6qOx9Ov3bssqfNuwa2pt1SKpoUaF027EOI01aSLa7rQbpC+vSv/6+xd+WMFhH1iFYheuOqT8tr13Mo7 | |
t2yV2bjdWjF2V4Jm724es5W77sYK7pqSILpeLY9hFIyCUUAXAADqDzv4; | |
DEFINE LABEL 21 | |
eJyzZWBgyNffpl+u02rIrHHbfLXSap/pCtWJ/+W9yx4rFNRZq0VOmqxdN6vaxHQuUClDtfttc2GPSVbF | |
Xq8qi726Jnz3+LECJO7s2WpY7GVj4h6YHzEvLDxHL4ox+F3cc4d1yZ+UJ6XMM/iV3B7+K3n9DK3UoiUg | |
9adKJ6r/KjOw+1V2qWpSOcTse+UJmv/qKjWONfzXudW0yvJWk2TQqkbemHO1F9Pzqguy7aoKskHqateF | |
GptuO6T6cAe3suNubuXWfeI6W/fnGhke3O5kePBuLOMB4/LWfQV1njt8Os9uu9zbuXlRv+uGy722QFry | |
1K4+hlEwCkYBHAAAblJnCQ; | |
DEFINE LABEL 22 | |
eJwzYmBg2O6r6mHvuCbe35ov39qSucfa8vh0eavFi8RtZTeed/E/VO9fcqoo1vkMUCnDu8LtTpeKGIPl | |
ii9VvStcsrWoYOkJtQL56yA5v5LtTnWl85z7mr7lX2rtyLLr3RF6aUaizbNZPGazZr07ClITuJXHLHDr | |
POfU7a8qJbebbQjcOvMSSPzrrhz5mQda5CKPHlLdeKrVsPA8j2fh+fbwo2cWZG48dbcg97h32dpDl6pC | |
9xqX/93uXQbS07jttnnjNnGdjdtvqTCMglEwCsgCANZ/V20; | |
DEFINE LABEL 23 | |
eJzTYWBg2OzK4LDZNcl/t5PA1N1OVzYDhRikXQ3smP1yjXaFPtdNi5hnEBd929wpRsLeKeZubFy0VKq/ | |
35Ti1R41JSC1admVGrfyxXUmlZ/T29d8Tg8kdqhim35X1fema1VvN4H4RrPnGdTNDs9hmiW0G8RPnHNL | |
RXbNJ2XftRPVDded0/u53i5q5topCbJrLqbvXRmec3SZWt7S+R1Ztgu+5U9dOrXt7appM/9uh+gdBaNg | |
FFAPAAC5jEfA; | |
DEFINE LABEL 24 | |
eJxzY2BgqDZ57lBsvt2p23G7k757nmu6q1p0tMP3pnbLrsX6JtE7Hhv/3M3t/XAPUCmDWmybi1psfsS7 | |
uMu97+KEdoPEimKfOxzLnee8rszADsR/F/e9aV/B9yYQWy5hw76otA37vHLSD5ZVNBwAiSV1PneY1FXl | |
d6+rs/ZQ9+6FZd0P90T1QOTcuvJcV03JNSqd91+ncpmBNueqc3qi69tcEtd/8Ty57m4s41qp1KPL+PIV | |
Fx4tLOs+WvhoUkHd3bnTZmauWbJVc6PQ7qubIeasPMtjpnvmvOPBIzszfh7aWf3zUNeEncd3L5Q85bjs | |
7YW0da7X/NZ33ixa4nnPpMvz3qWqs3cWZLpeMwx8enmec+tFiD9GwSgYCQAAiIyCHw; | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment