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

  <info>
      <link type="guide" xref="index#number"/>
  
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Paolo Stivanin</mal:name>
      <mal:email>paolostivanin@yahoo.it</mal:email>
      <mal:years>2010</mal:years>
    </mal:credit>
  
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Luca Ferretti</mal:name>
      <mal:email>lferrett@gnome.org</mal:email>
      <mal:years>2012</mal:years>
    </mal:credit>
  </info>

      <title>Modalità programmazione</title>

  <p>La <gui style="menuitem">modalità programmazione</gui> fornisce gli strumenti necessari per le operazioni matematiche comuni nello sviluppo software. Per esempio, la modalità programmazione rende molto semplici le operazioni matematiche su numeri esadecimali. Supporta anche <link xref="boolean">operatori bit per bit</link> comuni come <gui>NOT</gui>, <gui>AND</gui>, <gui>OR</gui>, ecc. Viene visualizzata una vista binaria per numeri lunghi fino a 64 bit, in cui l'utente può attivare o disattivare manualmente ogni bit usando il cursore del mouse.</p>
  <p>Inoltre, sono possibili operazioni di scorrimento di bit (bit-shifting) utilizzando i pulsanti <gui>≪</gui>, <gui>≫</gui> e <gui>⋙</gui>. L'<link xref="modulus">aritmetica modulare</link> può essere eseguita utilizzando il pulsante <gui>mod</gui>.</p>
  <p>La dimensione di parola predefinita per le funzioni bit per bit, complemento a uno, complemento a due e inversione dell'ordine dei byte (endianness) può essere modificata sia nel menu <gui style="menuitem">Preferenze</gui>, sia utilizzando il pulsante della dimensione di parola nella parte inferiore della tastiera in modalità programmazione. Ciò influenzerà il modo in cui vengono mostrati i risultati di queste funzioni. Ad esempio, qui mostriamo il complemento a due del numero 6B con dimensioni di parola di 64 e 16 bit:</p>
    <example>
    <p>64 bit:</p>
    <p>twos 6B</p>
    <p>FFFFFFFFFFFFFF95</p>
    <p>16 bit:</p>
    <p>twos 6B</p>
    <p>FF95</p>
    </example>
    <note style="warning">
    <p>Il tentativo di inserire un numero più grande di quello che può essere contenuto nella dimensione di parola selezionata provocherà un errore di overflow.</p>
    </note>

</page>
