Skip to content

Commit

Permalink
add assembly talk and talk notes
Browse files Browse the repository at this point in the history
  • Loading branch information
wilvk committed Oct 25, 2018
1 parent ce4c35f commit 7f8b622
Show file tree
Hide file tree
Showing 124 changed files with 7,698 additions and 1 deletion.
1 change: 1 addition & 0 deletions asm-talk/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
.DS_Store
53 changes: 53 additions & 0 deletions asm-talk/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
# Notes for the Programming Guild Presentation

Some starting knowledge
Overview of the implementation

building binaries - as, ld and the gcc toolkit

Gas files

Opcodes



Entry points

Reading from the process arguments and converting to a numeric value

The stack

GDB debugging - live demo

Getting the length of our argument on the command line

Making things easier to understand using function calls


Converting a string to a number

Register sizes and layout
- alu, registers, memory

Processing the string

The actual Fibonacci algorithm

Creating the stack space for our array

The Fibonacci logic in assembly
Setting up our variables
Array memory allocation

Variable initialisation

Indexed memory

Running the loop to completion
Calculating the sequence

Printing our result




Binary file not shown.
Binary file added asm-talk/asm_talk.key
Binary file not shown.
142 changes: 142 additions & 0 deletions asm-talk/css/default.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,142 @@
@import url(https://fonts.googleapis.com/css?family=Lato:400,700,400italic,700italic);
/**
* Default theme for reveal.js.
*
* Copyright (C) 2011-2012 Hakim El Hattab, http://hakim.se
*/
@font-face {
font-family: 'League Gothic';
src: url("../font/league_gothic-webfont.eot");
src: url("../font/league_gothic-webfont.eot?#iefix") format("embedded-opentype"), url("../font/league_gothic-webfont.woff") format("woff"), url("../font/league_gothic-webfont.ttf") format("truetype");
font-weight: normal;
font-style: normal; }

/*********************************************
* GLOBAL STYLES
*********************************************/
body {
background: #1c1e20;
background: -moz-radial-gradient(center, circle cover, #555a5f 0%, #1c1e20 100%);
background: -webkit-gradient(radial, center center, 0px, center center, 100%, color-stop(0%, #555a5f), color-stop(100%, #1c1e20));
background: -webkit-radial-gradient(center, circle cover, #555a5f 0%, #1c1e20 100%);
background: -o-radial-gradient(center, circle cover, #555a5f 0%, #1c1e20 100%);
background: -ms-radial-gradient(center, circle cover, #555a5f 0%, #1c1e20 100%);
background: radial-gradient(center, circle cover, #555a5f 0%, #1c1e20 100%);
background-color: #2b2b2b; }

.reveal {
font-family: "Lato", sans-serif;
font-size: 36px;
font-weight: 200;
letter-spacing: -0.02em;
color: #eeeeee; }

::selection {
color: white;
background: #ff5e99;
text-shadow: none; }

/*********************************************
* HEADERS
*********************************************/
.reveal h1,
.reveal h2,
.reveal h3,
.reveal h4,
.reveal h5,
.reveal h6 {
margin: 0 0 20px 0;
color: #eeeeee;
font-family: "League Gothic", Impact, sans-serif;
line-height: 0.9em;
letter-spacing: 0.02em;
text-transform: uppercase;
text-shadow: 0px 0px 6px rgba(0, 0, 0, 0.2); }

.reveal h1 {
text-shadow: 0 1px 0 #cccccc, 0 2px 0 #c9c9c9, 0 3px 0 #bbbbbb, 0 4px 0 #b9b9b9, 0 5px 0 #aaaaaa, 0 6px 1px rgba(0, 0, 0, 0.1), 0 0 5px rgba(0, 0, 0, 0.1), 0 1px 3px rgba(0, 0, 0, 0.3), 0 3px 5px rgba(0, 0, 0, 0.2), 0 5px 10px rgba(0, 0, 0, 0.25), 0 20px 20px rgba(0, 0, 0, 0.15); }

/*********************************************
* LINKS
*********************************************/
.reveal a:not(.image) {
color: #13daec;
text-decoration: none;
-webkit-transition: color .15s ease;
-moz-transition: color .15s ease;
-ms-transition: color .15s ease;
-o-transition: color .15s ease;
transition: color .15s ease; }

.reveal a:not(.image):hover {
color: #71e9f4;
text-shadow: none;
border: none; }

.reveal .roll span:after {
color: #fff;
background: #0d99a5; }

/*********************************************
* IMAGES
*********************************************/
.reveal section img {
margin: 15px 0px;
background: rgba(255, 255, 255, 0.12);
border: 4px solid #eeeeee;
box-shadow: 0 0 10px rgba(0, 0, 0, 0.15);
-webkit-transition: all .2s linear;
-moz-transition: all .2s linear;
-ms-transition: all .2s linear;
-o-transition: all .2s linear;
transition: all .2s linear; }

.reveal a:hover img {
background: rgba(255, 255, 255, 0.2);
border-color: #13daec;
box-shadow: 0 0 20px rgba(0, 0, 0, 0.55); }

/*********************************************
* NAVIGATION CONTROLS
*********************************************/
.reveal .controls div.navigate-left,
.reveal .controls div.navigate-left.enabled {
border-right-color: #13daec; }

.reveal .controls div.navigate-right,
.reveal .controls div.navigate-right.enabled {
border-left-color: #13daec; }

.reveal .controls div.navigate-up,
.reveal .controls div.navigate-up.enabled {
border-bottom-color: #13daec; }

.reveal .controls div.navigate-down,
.reveal .controls div.navigate-down.enabled {
border-top-color: #13daec; }

.reveal .controls div.navigate-left.enabled:hover {
border-right-color: #71e9f4; }

.reveal .controls div.navigate-right.enabled:hover {
border-left-color: #71e9f4; }

.reveal .controls div.navigate-up.enabled:hover {
border-bottom-color: #71e9f4; }

.reveal .controls div.navigate-down.enabled:hover {
border-top-color: #71e9f4; }

/*********************************************
* PROGRESS BAR
*********************************************/
.reveal .progress {
background: rgba(0, 0, 0, 0.2); }

.reveal .progress span {
background: #13daec;
-webkit-transition: width 800ms cubic-bezier(0.26, 0.86, 0.44, 0.985);
-moz-transition: width 800ms cubic-bezier(0.26, 0.86, 0.44, 0.985);
-ms-transition: width 800ms cubic-bezier(0.26, 0.86, 0.44, 0.985);
-o-transition: width 800ms cubic-bezier(0.26, 0.86, 0.44, 0.985);
transition: width 800ms cubic-bezier(0.26, 0.86, 0.44, 0.985); }
Binary file added asm-talk/css/logo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
151 changes: 151 additions & 0 deletions asm-talk/css/overrides.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,151 @@

h1,h2,h3 {
font-family: verdana;
text-transform:none!important;
}

.em {
color:#00C0F7!important;
}

.em3 {
color:#6AB825!important
}

.em4 {
color:#ED9D13!important
}

.em2 {
color:#ED9D13!important
}

.em5 {
color:maroon!important;
}


h1 {
font-size:2.5em!important;
text-shadow:none!important;
}

h2 {
font-size:2.0em!important;
}

html {
background:url('pattern.png') repeat;
}

body {
background-image:none;
background: -moz-linear-gradient(top, rgba(0,0,0,0.1) 30%, rgba(0,0,0,1) 100%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(30%,rgba(0,0,0,0.1)), color-stop(100%,rgba(0,0,0,1))); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top, rgba(0,0,0,0.1) 30%,rgba(0,0,0,1) 100%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top, rgba(0,0,0,0.1) 30%,rgba(0,0,0,1) 100%); /* Opera 11.10+ */
background: -ms-linear-gradient(top, rgba(0,0,0,0.1) 30%,rgba(0,0,0,1) 100%); /* IE10+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1a000000', endColorstr='#000000',GradientType=0 ); /* IE6-9 */
}

.reveal {
z-index:1500;
}

#me {
border: 0;
margin-top: -20px;
background: none;
margin-bottom: -50px;
}

#logo {
border:0;
background:url('ruby.png') no-repeat top;
height: 300px;
margin-top:-20px;
z-index:100;
position:relative;
}
.logo {
border-radius: 10px;
}

#logo:after {
content:"";
position:absolute;
top:0;
left:0;
right:0;
bottom:0;
background: -moz-linear-gradient(top, rgba(0,0,0,0.1) 70%, rgba(0,0,0,1) 100%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(70%,rgba(0,0,0,0.1)), color-stop(100%,rgba(0,0,0,1))); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top, rgba(0,0,0,0.1) 70%,rgba(0,0,0,1) 100%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top, rgba(0,0,0,0.1) 70%,rgba(0,0,0,1) 100%); /* Opera 11.10+ */
background: -ms-linear-gradient(top, rgba(0,0,0,0.1) 70%,rgba(0,0,0,1) 100%); /* IE10+ */
background: linear-gradient(to bottom, rgba(0,0,0,0.1) 70%,rgba(0,0,0,1) 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1a000000', endColorstr='#000000',GradientType=0 ); /* IE6-9 */
}

.existing-example {
margin:30px auto!important;
background:url('existing-example.png') no-repeat center top;
height:300px;
display:block;
}
.animated-example {
margin:30px auto!important;
background:url('animated-example.png') no-repeat center top;
height:300px;
display:block;
}

#anchor {
position:fixed;
bottom:20px;
left:20px;
font-size:2em;
background:rgba(0,0,0,1);
padding:10px;
text-decoration:none;
}

.big-code * {
font-size:25px!important;
line-height:30px!important;
}
.yom-table {
width:100%;
border-collapse:collapse;
}

.yom-table td,
.yom-table th {
width:50%;
text-align:center!important;
border:5px solid #222;
padding:10px;
}
.yom-table th {
background:#00566f!important
}
.yom-table td {
background:rgba(50,50,50,0.8);
}
#animation-inputs th.first,
#animation-inputs td.first {
width:30%!important;
}
#animation-members th.first,
#animation-members td.first {
width:20%!important;
}

.align-center {
text-align:center;
}

.joybox {
background: url(../img/cat-intro2.png) no-repeat center 50px, url("../img/bg-intro.png") no-repeat center;
min-height: 600px;
}
Loading

0 comments on commit 7f8b622

Please sign in to comment.