248 lines
7.9 KiB
HTML
248 lines
7.9 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
|
|
<title><< (left shift) | reference | Processing.js</title>
|
|
<link rel="stylesheet" href="../../css/bootstrap.css" type="text/css" />
|
|
<link rel="stylesheet" href="../../css/syntax.css" type="text/css" />
|
|
<link rel="stylesheet" href="../../css/processing-js.css" type="text/css" />
|
|
<script src="../../js/processing.min.js" type="text/javascript"></script>
|
|
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js" type="text/javascript"></script>
|
|
<script src="../../js/jquery.tweet.min.js" type="text/javascript"></script>
|
|
<script src="../../js/tabselector.js" type="text/javascript"></script>
|
|
<script src="http://cdn.webglstats.com/stat.js" defer="defer" async="async"></script>
|
|
<script type="text/javascript">
|
|
// Only do tracking on the actual site
|
|
if (document.location.host === "processingjs.org") {
|
|
var _gaq = _gaq || [];
|
|
_gaq.push(['_setAccount', 'UA-8565070-1']);
|
|
_gaq.push(['_trackPageview']);
|
|
(function() {
|
|
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
|
|
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
|
|
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
|
|
}());
|
|
}
|
|
</script>
|
|
</head>
|
|
<body>
|
|
<div class="container">
|
|
<div class="header">
|
|
<a href="http://processingjs.org/"><img src="../../images/header.png" width="177" height="42"></a>
|
|
</div>
|
|
<span class="tagline">a port of the Processing Visualization Language</span>
|
|
|
|
<div class="navbar">
|
|
<canvas width="940px" height="78px" data-processing-sources="/sketches/bannerSketch.pde"></canvas>
|
|
<ul>
|
|
<li><a href="http://processingjs.org/"><span>home</span></a></li>
|
|
<li><a href="http://processingjs.org/download/"><span>download</span></a></li>
|
|
<li><a href="../index.html"><span>reference</span></a></li>
|
|
<li><a href="http://processingjs.org/exhibition/"><span>exhibition</span></a></li>
|
|
<li><a href="http://processingjs.org/learning/"><span>learning</span></a></li>
|
|
<li><a href="http://processingjs.org/articles/"><span>articles</span></a></li>
|
|
<li><a href="http://processingjs.org/community/"><span>community</span></a></li>
|
|
<li><a href="http://processingjs.org/blog/"><span>blog</span></a></li>
|
|
</ul>
|
|
<a class="viewsource" href="http://processingjs.org/sketches/bannerSketch.pde">view source</a>
|
|
</div>
|
|
|
|
<div class="page row">
|
|
<div class="span11">
|
|
<table cellpadding="0" cellspacing="0" border="0" class="ref-item">
|
|
|
|
<tr class="name-row">
|
|
|
|
<th scope="row">Name</th>
|
|
|
|
<td><h3><< (left shift)</h3></td>
|
|
|
|
|
|
|
|
</tr>
|
|
|
|
|
|
|
|
<tr class="">
|
|
|
|
<th scope="row">Examples</th>
|
|
|
|
<td><div class="example"><pre>int m = 1 << 3; // In binary: 1 to 1000
|
|
|
|
println(m); // Prints "8"
|
|
|
|
int n = 1 << 8; // In binary: 1 to 100000000
|
|
|
|
println(n); // Prints "256"
|
|
|
|
int o = 2 << 3; // In binary: 10 to 10000
|
|
|
|
println(o); // Prints "16"
|
|
|
|
int p = 13 << 1; // In binary: 1101 to 11010
|
|
|
|
println(p); // Prints "26"</pre></div><hr class="noShade" noshade="noshade" size="1" /><div class="example"><pre>// Packs four 8 bit numbers into one 32 bit number
|
|
|
|
int a = 255; // Binary: 00000000000000000000000011111111
|
|
|
|
int r = 204; // Binary: 00000000000000000000000011001100
|
|
|
|
int g = 204; // Binary: 00000000000000000000000011001100
|
|
|
|
int b = 51; // Binary: 00000000000000000000000000110011
|
|
|
|
a = a << 24; // Binary: 11111111000000000000000000000000
|
|
|
|
r = r << 16; // Binary: 00000000110011000000000000000000
|
|
|
|
g = g << 8; // Binary: 00000000000000001100110000000000
|
|
|
|
|
|
|
|
// Equivalent to "color argb = color(r, g, b, a)" but faster
|
|
|
|
color argb = a | r | g | b;
|
|
|
|
fill(argb);
|
|
|
|
rect(30, 20, 55, 55);</pre></div></td>
|
|
|
|
|
|
|
|
</tr>
|
|
|
|
|
|
|
|
<tr class="">
|
|
|
|
<th scope="row">Description</th>
|
|
|
|
<td>Shifts bits to the left. The number to the left of the operator is shifted the number of places specified by the number to the right. Each shift to the left doubles the number, therefore each left shift multiplies the original number by 2. Use the left shift for fast multiplication or to pack a group of numbers together into one larger number. Left shifting only works with integers or numbers which automatically convert to an integer such at byte and char.</td>
|
|
|
|
</tr>
|
|
|
|
|
|
|
|
<tr class="">
|
|
|
|
<th scope="row">Syntax</th>
|
|
|
|
|
|
|
|
<td><pre><kbd>value</kbd> << <kbd>n</kbd></pre></td>
|
|
|
|
</tr>
|
|
|
|
|
|
|
|
<tr class="">
|
|
|
|
<th scope="row">Parameters</th>
|
|
|
|
<td><table cellpadding="0" cellspacing="0" border="0">
|
|
|
|
|
|
|
|
<tr class="">
|
|
|
|
<th scope="row">value</th>
|
|
|
|
<td>int: the value to shift</td>
|
|
|
|
</tr>
|
|
|
|
|
|
|
|
<tr class="">
|
|
|
|
<th scope="row">n</th>
|
|
|
|
<td>int: the number of places to shift left</td>
|
|
|
|
|
|
|
|
</tr>
|
|
|
|
</table></td>
|
|
|
|
</tr>
|
|
|
|
|
|
|
|
<tr class="">
|
|
|
|
<th scope="row">Usage</th>
|
|
|
|
<td>Web & Application</td>
|
|
|
|
</tr>
|
|
|
|
|
|
|
|
<tr class="">
|
|
|
|
<th scope="row">Related</th>
|
|
|
|
<td><a href="http://processingjs.org/reference/right shift">>> (right shift)</a><br /></td>
|
|
|
|
</tr>
|
|
|
|
</table>
|
|
|
|
|
|
<div class="cclicense">
|
|
<p>This reference is licensed under the CC BY-NC-SA 2.0 license:</p>
|
|
<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/2.0/">
|
|
<img alt="Creative Commons License" border="0" src="../../images/somerights20.gif" />
|
|
</a>
|
|
</div>
|
|
</div>
|
|
<div class="sidebar span4">
|
|
<h3><a href="http://processingjs.org/download/">Downloads</a></h3>
|
|
<ul>
|
|
<li><a href="http://processingjs.org/download/">Download the latest version of Processing.js!</a></li>
|
|
</ul>
|
|
|
|
<h3><a href="http://processingjs.org/articles/">Articles</a></h3>
|
|
<ul>
|
|
<li><a href="http://processingjs.org/articles/jsQuickStart.html">Quick Start - JavaScript Developer</a></li>
|
|
<li><a href="http://processingjs.org/articles/p5QuickStart.html">Quick Start - Processing Developer</a></li>
|
|
<li><a href="http://processingjs.org/articles/RenderingModes.html">Rendering Modes</a></li>
|
|
<li><a href="http://processingjs.org/articles/PomaxGuide.html">Pomax's Guide to processing-js</a></li>
|
|
</ul>
|
|
|
|
<h3><a>Web IDEs</a></h3>
|
|
<ul>
|
|
<li><a href="http://sketchpad.cc">Sketchpad.cc</a></li>
|
|
<li><a href="http://processingjs.org/tools/processing-helper.html">Processing.js Helper</a></li>
|
|
<li><a href="http://www.openprocessing.org">OpenProcessing.org</a></li>
|
|
</ul>
|
|
|
|
<h3><a href="http://processingjs.org/community/">Community</a></h3>
|
|
<ul>
|
|
<li><a href="irc://irc.mozilla.org/processing.js">IRC Channel</a></li>
|
|
<li><a href="http://processing-js.lighthouseapp.com/">Bug Tracker</a></li>
|
|
<li><a href="http://github.com/processing-js/processing-js/">Github Repository</a></li>
|
|
<li><a href="http://groups.google.com/group/processingjs">Google Group</a></li>
|
|
<li><a href="http://zenit.senecac.on.ca/wiki/index.php/">Open Source @ Seneca</a></li>
|
|
</ul>
|
|
|
|
<h3><a href="http://twitter.com/processingjs">Twitter Feed</a></h3>
|
|
<div class="twitter"></div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="footer">
|
|
Processing is an open visualization language developed by
|
|
<a href="http://benfry.com/">Ben Fry</a> & <a href="http://reas.com/">Casey Reas</a>,
|
|
and originally ported to Javascript by
|
|
<a href="http://ejohn.org/blog/processingjs/">John Resig</a>.
|
|
Processing.js is maintained by the Processing.js team.
|
|
</div>
|
|
</div>
|
|
<a href="http://github.com/processing-js/processing-js/">
|
|
<img style="position: absolute; top: 0; right: 0; border: 0;" src="../../images/forkme-right-orange.png" alt="Fork me on GitHub">
|
|
</a>
|
|
</body>
|
|
</html>
|