<?xml version="1.0" encoding="utf-8"?>
<page xmlns="http://projectmallard.org/1.0/" type="guide" id="mode-programming" xml:lang="sv">

  <info>
      <link type="guide" xref="index#number"/>
  
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Daniel Nylander</mal:name>
      <mal:email>po@danielnylander.se</mal:email>
      <mal:years>2006, 2007, 2009</mal:years>
    </mal:credit>
  
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Sebastian Rasmussen</mal:name>
      <mal:email>sebras@gmail.com</mal:email>
      <mal:years>2015</mal:years>
    </mal:credit>
  
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Anders Jonsson</mal:name>
      <mal:email>anders.jonsson@gmail.com</mal:email>
      <mal:years>2017, 2018, 2020, 2021, 2023, 2025</mal:years>
    </mal:credit>
  </info>

      <title>Programmeringsläge</title>

  <p><gui style="menuitem">Programmeringsläge</gui> tillhandahåller verktygen som krävs för vanliga matematiska operationer i programutveckling. Exempelvis gör programmeringsläget matematik på hexadecimala tal väldigt lätt. Det stöder också vanliga <link xref="boolean">bitvisa operatorer</link> som <gui>NOT</gui>, <gui>AND</gui>, <gui>OR</gui> och så vidare. En binär vy för tal upp till 64 bitar långa visas, där användaren manuellt kan växla varje bit med muspekaren.</p>
  <p>Dessutom är bitskiftningsoperationer möjliga genom att använda knapparna <gui>≪</gui>, <gui>≫</gui> och <gui>⋙</gui>. <link xref="modulus">Moduloaritmetik</link> kan utföras med knappen <gui>mod</gui>.</p>
  <p>Standardordstorleken för bitvisa funktioner, tvåkomplement och funktion för att växla byteordning kan ändras både i menyn <gui style="menuitem">Inställningar</gui>, eller genom att använda ordstorleksknappen i botten på knappsatsen i programmeringsläge. Detta kommer påverka hur resultat från dessa funktioner visas. Här visar vi exempelvis tvåkomplement för talet 6B i 64 bitars och 16 bitars ordstorlekar:</p>
    <example>
    <p>64 bitar:</p>
    <p>twos 6B</p>
    <p>FFFFFFFFFFFFFF95</p>
    <p>16 bitar:</p>
    <p>twos 6B</p>
    <p>FF95</p>
    </example>
    <note style="warning">
    <p>Försök att mata in ett större tal än som kan rymmas i den valda ordstorleken kommer resultera i ett överspillsfel.</p>
    </note>

</page>
