FireDynamics / FireDynamics/LectureComputerScience

Musterlösung für Zahlenumrechnung

Abierto
#41 1 comentario 0 reacciones 0 asignados Ver en GitHub
Lenguaje dominante
Jupyter Notebook
Estrellas
3
Forks
8
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

Da weder im Script noch in der Musterlösung klar erklärt ist, wie die Umrechnung funktioniert, sollte eine Musterlösung vorhanden sein. Diese könnte folgendermaßen aussehen (leider werden in Github-Markdown die Farben ausgeblendet):

Musterlösung:

11110 -> ?2

| Division durch 2 | Quotient | Rest | #Bit |
|-------------------|----------|------|------|
| 111/2 | 55 | 1 | 0 |
| 55/2 | 27 | 1 | 1 |
| 27/2 | 13 | 1 | 2 |
| 13/2 | 6 | 1 | 3 |
| 6/2 | 3 | 0 | 4 |
| 3/2 | 1 | 1 | 5 |
| 1/2 | 0 | 1 | 6 |

Jetzt muss man nur noch die vorletzte Spalte "Rest" von unten nach oben notieren

=> 11011112

Da wir eine 8-Bit Zahl benötigen müssen wir die Zahl jetzt vorne noch mit 0 auffüllen, bis wir 8 Zeichen haben.

=> 011011112

Alternativ:

11110 -> ?2

Alternativ kann man auch mit folgender Methode die Zahl umwandeln:

| #Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
|-----------------|-----|----|----|----|---|---|---|---|
| 2#Bit | 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
| Endergebnis | | | | | | | | |

Ist 111 >= 128? Nein also tragen wir an dieser Stelle eine 0 ein:

| #Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
|-----------------|-----|----|----|----|---|---|---|---|
| 2#Bit | 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
| Endergebnis | 0 | | | | | | | |

##

Jetzt zur nächsten Spalte:

Ist 111 >= 64? Ja also tragen wir an dieser Stelle eine 1 ein:

| #Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
|-----------------|-----|----|----|----|---|---|---|---|
| 2#Bit | 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
| Endergebnis | 0 | 1 | | | | | | |

Da das Ergebnis 1 war, müssen wir von 111 64 abziehen => 111-64= 47

##

Jetzt zur nächsten Spalte:

Ist 47 >= 32? Ja also tragen wir an dieser Stelle eine 1 ein:

| #Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
|-----------------|-----|----|----|----|---|---|---|---|
| 2#Bit | 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
| Endergebnis | 0 | 1 | 1 | | | | | |

Wieder berechnen wir die Differenz => 47-32= 15

##

Jetzt zur nächsten Spalte:

Ist 15 >= 16? Nein also tragen wir an dieser Stelle eine 0 ein:

| #Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
|-----------------|-----|----|----|----|---|---|---|---|
| 2#Bit | 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
| Endergebnis | 0 | 1 | 1 | 0 | | | | |

Da keine 1 eingetragen wurde müssen wir keine Differenz berechnen.

##

Jetzt zur nächsten Spalte:

Ist 15 >= 8? Ja also tragen wir an dieser Stelle eine 1 ein:

| #Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
|-----------------|-----|----|----|----|---|---|---|---|
| 2#Bit | 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
| Endergebnis | 0 | 1 | 1 | 0 | 1 | | | |

Wieder berechnen wir die Differenz => 15-8= 7

##

Jetzt zur nächsten Spalte:

Ist 8 >= 4? Ja also tragen wir an dieser Stelle eine 1 ein:

| #Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
|-----------------|-----|----|----|----|---|---|---|---|
| 2#Bit | 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
| Endergebnis | 0 | 1 | 1 | 0 | 1 | 1 | | |

Wieder berechnen wir die Differenz => 8-4= 3

##

Jetzt zur nächsten Spalte:

Ist 3 >= 2? Ja also tragen wir an dieser Stelle eine 1 ein:

| #Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
|-----------------|-----|----|----|----|---|---|---|---|
| 2#Bit | 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
| Endergebnis | 0 | 1 | 1 | 0 | 1 | 1 | 1 | |

Wieder berechnen wir die Differenz => 3-2= 1

##

Jetzt zur nächsten Spalte:

Ist 1 >= 1? Ja also tragen wir an dieser Stelle eine 1 ein:

| #Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
|-----------------|-----|----|----|----|---|---|---|---|
| 2#Bit | 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
| Endergebnis | 0 | 1 | 1 | 0 | 1 | 1 | 1 | 1 |

Wieder berechnen wir die Differenz => 3-2= 1

Damit erhalten wir ebenfalls:

=> 011011112

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Línea de trabajo

Localiza el script y la Musterlösung existente a los que se hace referencia en el issue y, a continuación, lee cómo se presenta actualmente el ejercicio de conversión de números. Añade el ejemplo resuelto propuesto en un formato compatible con el notebook o su documentación, incluidos ambos métodos de conversión y el resultado de 8 bits. Se considera terminado cuando una persona recién llegada puede seguir el ejemplo sin depender de un estilo de color que GitHub Markdown oculta.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
jupyter-notebook
Área
documentation
Tipo de issue
Documentación
Dificultad
2/5
Tiempo estimado
1-3 horas
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
45/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.