What is Computer Science? Computer science is the study of computational systems, their practical applications, and the examination of how humans interact with, and approve upon, new technology. College computer science programs and their open online courses typically focus on these primary concentrations: the theory behind programming language, the pragmatic applications and development of new technology, instructional design, and the creation of more user-friendly tech interfaces. Specifically, many courses deal with algorithm creation and coding techniques, while others will apply this knowledge to real-world tasks such as software construction. What Can Online Courses in Computer Science Actually Teach Me?
(A play in 4 acts. Please feel free to exit along with the stage character that best represents you. Take intermissions as you see fit. Click on the stage if you have a hard time seeing it. If you get bored, you can jump to the code .
I decided to write an article about a thing that is second nature to embedded systems programmers - low level bit hacks . Bit hacks are ingenious little programming tricks that manipulate integers in a smart and efficient manner. Instead of performing some operation (such as counting the 1 bits in an integer) by looping over individual bits, these programming nuggets do the same with one or two carefully chosen bitwise operations. To get things going I'll assume that you know what the two's complement binary representation of an integer is and also that you know all the the bitwise operations. I'll use the following notation for bitwise operations in the article:
By Sean Eron Anderson seander@cs. stanford.edu Individually, the code snippets here are in the public domain (unless otherwise noted) — feel free to use them however you please. The aggregate collection and descriptions are © 1997-2005 Sean Eron Anderson. The code and descriptions are distributed in the hope that they will be useful, but WITHOUT ANY WARRANTY and without even the implied warranty of merchantability or fitness for a particular purpose. As of May 5, 2005, all the code has been tested thoroughly. Thousands of people have read it.
Ethiopian multiplication Ethiopian multiplication You are encouraged to solve this task according to the task description, using any language you may know. A method of multiplying integers using only addition, doubling, and halving. Method:
How binary works: The binary number system (aka base 2) represents values using two symbols, typically 0 and 1. Computers call these bits. A bit is either off (0) or on (1). When arranged in sets of 8 bits (1 byte) 256 values can be represented (0-255). Using an ASCII chart, these values can be mapped to characters and text can be stored. It's not magic, it's just math!
A compendium of NP optimization problems