{"id":737,"date":"2010-12-02T14:50:46","date_gmt":"2010-12-02T04:50:46","guid":{"rendered":"http:\/\/brnz.org\/hbr\/?page_id=737"},"modified":"2012-03-04T16:12:13","modified_gmt":"2012-03-04T06:12:13","slug":"assembly-primer-series-for-spu-and-ppc","status":"publish","type":"page","link":"https:\/\/brnz.org\/hbr\/?page_id=737","title":{"rendered":"Assembly Primer Series &#8212; For SPU, PPC and ARM"},"content":{"rendered":"<p>The SecurityTube <a href=\"http:\/\/www.securitytube.net\/groups?operation=view&amp;groupId=5\">Assembly Language Primer For Hackers Series for Linux<\/a> provides a solid introduction to assembly language programming for the ia32 architecture.\u00a0I found it to be most informative, and wondered what the examples from that series might look like if written for the PPU and SPUs of the Cell BE.<\/p>\n<p>More recently, I acquired a Nokia N900 and have begun working through the same series for the N900&#8217;s ARM Cortex-A8 core.<\/p>\n<p>My notes for each part are linked below.<\/p>\n<table>\n<tbody>\n<tr>\n<td style=\"padding-right: 10px;\"><\/td>\n<td>Instruction list<\/td>\n<td style=\"padding-right: 15px;\"><a href=\"http:\/\/brnz.org\/cell\/doku.php?id=ppuinstructions\">PPU<\/a><\/td>\n<td><a href=\"http:\/\/brnz.org\/cell\/doku.php?id=spuinstructions\">SPU<\/a><\/td>\n<\/tr>\n<tr>\n<td style=\"padding-right: 10px;\">Part 1<\/td>\n<td>System Organization<\/td>\n<td style=\"padding-right: 15px;\"><a href=\"?p=631\">PPC<\/a><\/td>\n<td style=\"padding-right: 15px;\"><a href=\"?p=632\">SPU<\/a><\/td>\n<td rowspan=\"3\"><a href=\"?p=932\">ARM<\/a><\/td>\n<\/tr>\n<tr>\n<td>Part 2<\/td>\n<td style=\"padding-right: 10px;\">Memory Organisation<\/td>\n<td><\/td>\n<td><a href=\"?p=633\">SPU<\/a><\/td>\n<\/tr>\n<tr>\n<td>Part 3<\/td>\n<td>GDB Usage Primer<\/td>\n<td colspan=\"2\" align=\"left\"><a href=\"?p=634\">PPC &amp; SPU<\/a><\/td>\n<\/tr>\n<tr>\n<td>Part 4<\/td>\n<td>Hello World<\/td>\n<td><a href=\"?p=635\">PPC<\/a><\/td>\n<td><a href=\"?p=636\">SPU<\/a><\/td>\n<td><a href=\"?p=955\">ARM<\/a><\/td>\n<\/tr>\n<tr>\n<td>Part 5<\/td>\n<td>Data Types<\/td>\n<td colspan=\"2\" align=\"left\"><a href=\"?p=685\">PPC &amp; SPU<\/a><\/td>\n<\/tr>\n<tr>\n<td>Part 6<\/td>\n<td>Moving Data<\/td>\n<td><a href=\"?p=724\">PPC<\/a><\/td>\n<td><a href=\"?p=701\">SPU<\/a><\/td>\n<td><a href=\"?p=975\">ARM<\/a><\/td>\n<\/tr>\n<tr>\n<td>Part 7<\/td>\n<td>Working with Strings<\/td>\n<td><\/td>\n<td><a href=\"?p=793\">SPU<\/a><\/td>\n<td><a href=\"?p=1001\">ARM<\/a><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Further links will be added as I complete subsequent parts.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The SecurityTube Assembly Language Primer For Hackers Series for Linux provides a solid introduction to assembly language programming for the ia32 architecture.\u00a0I found it to be most informative, and wondered what the examples from that series might look like if written for the PPU and SPUs of the Cell BE. More recently, I acquired a &hellip; <a href=\"https:\/\/brnz.org\/hbr\/?page_id=737\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Assembly Primer Series &#8212; For SPU, PPC and ARM&#8221;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"open","ping_status":"open","template":"","meta":[],"_links":{"self":[{"href":"https:\/\/brnz.org\/hbr\/index.php?rest_route=\/wp\/v2\/pages\/737"}],"collection":[{"href":"https:\/\/brnz.org\/hbr\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/brnz.org\/hbr\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/brnz.org\/hbr\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/brnz.org\/hbr\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=737"}],"version-history":[{"count":55,"href":"https:\/\/brnz.org\/hbr\/index.php?rest_route=\/wp\/v2\/pages\/737\/revisions"}],"predecessor-version":[{"id":1084,"href":"https:\/\/brnz.org\/hbr\/index.php?rest_route=\/wp\/v2\/pages\/737\/revisions\/1084"}],"wp:attachment":[{"href":"https:\/\/brnz.org\/hbr\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=737"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}