<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="es">
	<id>http://wiki.cabal.mx/index.php?action=history&amp;feed=atom&amp;title=Curso_de_Programaci%C3%B3n_en_C%2FProg127</id>
	<title>Curso de Programación en C/Prog127 - Historial de revisiones</title>
	<link rel="self" type="application/atom+xml" href="http://wiki.cabal.mx/index.php?action=history&amp;feed=atom&amp;title=Curso_de_Programaci%C3%B3n_en_C%2FProg127"/>
	<link rel="alternate" type="text/html" href="http://wiki.cabal.mx/index.php?title=Curso_de_Programaci%C3%B3n_en_C/Prog127&amp;action=history"/>
	<updated>2026-04-13T16:35:26Z</updated>
	<subtitle>Historial de revisiones para esta página en el wiki</subtitle>
	<generator>MediaWiki 1.32.1</generator>
	<entry>
		<id>http://wiki.cabal.mx/index.php?title=Curso_de_Programaci%C3%B3n_en_C/Prog127&amp;diff=4319&amp;oldid=prev</id>
		<title>Rrc en 13:44 27 oct 2012</title>
		<link rel="alternate" type="text/html" href="http://wiki.cabal.mx/index.php?title=Curso_de_Programaci%C3%B3n_en_C/Prog127&amp;diff=4319&amp;oldid=prev"/>
		<updated>2012-10-27T13:44:31Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Página nueva&lt;/b&gt;&lt;/p&gt;&lt;div&gt;__NOTOC__&lt;br /&gt;
* [[:#Prog127 | Bitwise AND para evaluar bits]]&lt;br /&gt;
** [[:#Resultado | Resultado]]&lt;br /&gt;
** [[:#Explicación | Explicación]]&lt;br /&gt;
&lt;br /&gt;
== Prog127 ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot; line=&amp;quot;GESHI_FANCY_LINE_NUMBERS&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
#include &amp;lt;stdlib.h&amp;gt;&lt;br /&gt;
#include &amp;lt;string.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
int main( void )&lt;br /&gt;
{&lt;br /&gt;
  unsigned char Mascara,&lt;br /&gt;
                Semaforos;&lt;br /&gt;
&lt;br /&gt;
  char Buf[7];&lt;br /&gt;
&lt;br /&gt;
  int  i,&lt;br /&gt;
       Prueba;&lt;br /&gt;
&lt;br /&gt;
  puts( &amp;quot;\nEl bitwise AND esta usado a veces a ver&amp;quot; );&lt;br /&gt;
  puts( &amp;quot;si algunas bits en un entero están prendidos o pagados\n&amp;quot; );&lt;br /&gt;
  printf( &amp;quot;Dame un número positivo entre 0 y 255: &amp;quot; );&lt;br /&gt;
  while( fgets( Buf, 5, stdin ) &amp;amp;&amp;amp; Buf[0] != &amp;#039;\n&amp;#039; )&lt;br /&gt;
  {&lt;br /&gt;
    if( *(Buf + strlen( Buf ) -1 ) != &amp;#039;\n&amp;#039; )&lt;br /&gt;
    {&lt;br /&gt;
      fputs( &amp;quot;La línea que entraste es demaciado largo.\nSolo 3 chars MAX&amp;quot;,&lt;br /&gt;
                                                                     stderr );&lt;br /&gt;
      exit(1);&lt;br /&gt;
    }&lt;br /&gt;
    *(Buf + strlen( Buf ) -1 ) = &amp;#039;\0&amp;#039;;&lt;br /&gt;
&lt;br /&gt;
    for( i = 0; i &amp;lt; strlen( Buf ); i++ )&lt;br /&gt;
    {&lt;br /&gt;
      if( Buf[i] &amp;lt; &amp;#039;0&amp;#039; || Buf[i] &amp;gt; &amp;#039;9&amp;#039; )&lt;br /&gt;
      {&lt;br /&gt;
        fputs( &amp;quot;Caracteres ilegales en su ingreso\n&amp;quot;, stderr );&lt;br /&gt;
        exit(1);&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    Prueba = atoi( Buf);&lt;br /&gt;
    if( Prueba &amp;gt; 255 )&lt;br /&gt;
    {&lt;br /&gt;
      fputs( &amp;quot;Su entrada está fuera del rango especificado\n&amp;quot;, stderr );&lt;br /&gt;
      exit(1);&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    Semaforos = Prueba;&lt;br /&gt;
&lt;br /&gt;
    for( i = 1; i &amp;lt;= 8; i++ )&lt;br /&gt;
    {&lt;br /&gt;
      if( i == 1 )&lt;br /&gt;
        Mascara = 0x01;&lt;br /&gt;
      else&lt;br /&gt;
        Mascara &amp;lt;&amp;lt;= 1;&lt;br /&gt;
      Semaforos &amp;amp; Mascara ?&lt;br /&gt;
        printf( &amp;quot;Bit No. %d en %d está prendida    1\n&amp;quot;, i -1, Semaforos ) :&lt;br /&gt;
        printf( &amp;quot;Bit No. %d en %d no está prendida 0\n&amp;quot;, i -1, Semaforos );&lt;br /&gt;
    }&lt;br /&gt;
    printf( &amp;quot;\nDame un número positivo entre 0 y 255&amp;quot;&lt;br /&gt;
            &amp;quot; (&amp;lt;Enter&amp;gt; para terminar): &amp;quot; );&lt;br /&gt;
  }&lt;br /&gt;
  return 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Resultado ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El bitwise AND esta usado a veces a ver&lt;br /&gt;
si algunas bits en un entero están prendidos o pagados&lt;br /&gt;
&lt;br /&gt;
Dame un número positivo entre 0 y 255: 1&lt;br /&gt;
Bit No. 0 en 1 está prendida    1&lt;br /&gt;
Bit No. 1 en 1 no está prendida 0&lt;br /&gt;
Bit No. 2 en 1 no está prendida 0&lt;br /&gt;
Bit No. 3 en 1 no está prendida 0&lt;br /&gt;
Bit No. 4 en 1 no está prendida 0&lt;br /&gt;
Bit No. 5 en 1 no está prendida 0&lt;br /&gt;
Bit No. 6 en 1 no está prendida 0&lt;br /&gt;
Bit No. 7 en 1 no está prendida 0&lt;br /&gt;
&lt;br /&gt;
Dame un número positivo entre 0 y 255 (&amp;lt;Enter&amp;gt; para terminar): 2&lt;br /&gt;
Bit No. 0 en 2 no está prendida 0&lt;br /&gt;
Bit No. 1 en 2 está prendida    1&lt;br /&gt;
Bit No. 2 en 2 no está prendida 0&lt;br /&gt;
Bit No. 3 en 2 no está prendida 0&lt;br /&gt;
Bit No. 4 en 2 no está prendida 0&lt;br /&gt;
Bit No. 5 en 2 no está prendida 0&lt;br /&gt;
Bit No. 6 en 2 no está prendida 0&lt;br /&gt;
Bit No. 7 en 2 no está prendida 0&lt;br /&gt;
&lt;br /&gt;
Dame un número positivo entre 0 y 255 (&amp;lt;Enter&amp;gt; para terminar): 3&lt;br /&gt;
Bit No. 0 en 3 está prendida    1&lt;br /&gt;
Bit No. 1 en 3 está prendida    1&lt;br /&gt;
Bit No. 2 en 3 no está prendida 0&lt;br /&gt;
Bit No. 3 en 3 no está prendida 0&lt;br /&gt;
Bit No. 4 en 3 no está prendida 0&lt;br /&gt;
Bit No. 5 en 3 no está prendida 0&lt;br /&gt;
Bit No. 6 en 3 no está prendida 0&lt;br /&gt;
Bit No. 7 en 3 no está prendida 0&lt;br /&gt;
&lt;br /&gt;
Dame un número positivo entre 0 y 255 (&amp;lt;Enter&amp;gt; para terminar): 4&lt;br /&gt;
Bit No. 0 en 4 no está prendida 0&lt;br /&gt;
Bit No. 1 en 4 no está prendida 0&lt;br /&gt;
Bit No. 2 en 4 está prendida    1&lt;br /&gt;
Bit No. 3 en 4 no está prendida 0&lt;br /&gt;
Bit No. 4 en 4 no está prendida 0&lt;br /&gt;
Bit No. 5 en 4 no está prendida 0&lt;br /&gt;
Bit No. 6 en 4 no está prendida 0&lt;br /&gt;
Bit No. 7 en 4 no está prendida 0&lt;br /&gt;
&lt;br /&gt;
Dame un número positivo entre 0 y 255 (&amp;lt;Enter&amp;gt; para terminar): 7&lt;br /&gt;
Bit No. 0 en 7 está prendida    1&lt;br /&gt;
Bit No. 1 en 7 está prendida    1&lt;br /&gt;
Bit No. 2 en 7 está prendida    1&lt;br /&gt;
Bit No. 3 en 7 no está prendida 0&lt;br /&gt;
Bit No. 4 en 7 no está prendida 0&lt;br /&gt;
Bit No. 5 en 7 no está prendida 0&lt;br /&gt;
Bit No. 6 en 7 no está prendida 0&lt;br /&gt;
Bit No. 7 en 7 no está prendida 0&lt;br /&gt;
&lt;br /&gt;
Dame un número positivo entre 0 y 255 (&amp;lt;Enter&amp;gt; para terminar): 57&lt;br /&gt;
Bit No. 0 en 57 está prendida    1&lt;br /&gt;
Bit No. 1 en 57 no está prendida 0&lt;br /&gt;
Bit No. 2 en 57 no está prendida 0&lt;br /&gt;
Bit No. 3 en 57 está prendida    1&lt;br /&gt;
Bit No. 4 en 57 está prendida    1&lt;br /&gt;
Bit No. 5 en 57 está prendida    1&lt;br /&gt;
Bit No. 6 en 57 no está prendida 0&lt;br /&gt;
Bit No. 7 en 57 no está prendida 0&lt;br /&gt;
&lt;br /&gt;
Dame un número positivo entre 0 y 255 (&amp;lt;Enter&amp;gt; para terminar): 255&lt;br /&gt;
Bit No. 0 en 255 está prendida    1&lt;br /&gt;
Bit No. 1 en 255 está prendida    1&lt;br /&gt;
Bit No. 2 en 255 está prendida    1&lt;br /&gt;
Bit No. 3 en 255 está prendida    1&lt;br /&gt;
Bit No. 4 en 255 está prendida    1&lt;br /&gt;
Bit No. 5 en 255 está prendida    1&lt;br /&gt;
Bit No. 6 en 255 está prendida    1&lt;br /&gt;
Bit No. 7 en 255 está prendida    1&lt;br /&gt;
&lt;br /&gt;
Dame un número positivo entre 0 y 255 (&amp;lt;Enter&amp;gt; para terminar): 256&lt;br /&gt;
Su entrada está fuera del rango especificado&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Explicación ===&lt;br /&gt;
 &lt;br /&gt;
[[Category:Programación en C]]&lt;br /&gt;
[[Category:CCabal]]&lt;br /&gt;
[[Category:CursoC]]&lt;/div&gt;</summary>
		<author><name>Rrc</name></author>
		
	</entry>
</feed>