]> Matthias Wimmer (溫雅石)

Content tagged asm

„ARM Assembly Language - an Introduction“ von J. R. Gibson

posted on

ARM Assembly Language – an Introduction

Die letzten Tage habe ich das Buch ARM Assembly Language – an Introduction von J. R. Gibson gelesen. Es ist eine Anleitung wie man ARM-Prozessoren in Assembler programmiert. Geschrieben wurde das Buch als Lehrbuch an der Universität Liverpool. Das merkt man, am Ende jeden Kapitels stehen Übungsaufgaben zum Einprägen und Verständnis überprüfen.

Das Buch ist perfekt für Einsteiger in der Assemblerprogrammierung. Der Leser erhält einen ausführlichen Überblick wie er in dieser Sprache programmieren kann. Wird der Einstieg mit einer begleitenden Vorlesung und Übungen unterstützt, so funktioniert das Buch noch besser. Es hilft aber auch, ein paar Grundlagen der Zahldarstellung und der Bit-Manipulation schon zu kennen.

Im Buch wird die ARM-7-Architektur behandelt. Vor allem wird der Prozessor ARM7TDMI betrachtet. Details zu den Prozessoren oder anderer Hardware findet man aber nicht. Dadurch ist das Buch auf für die allgemeine ARM-Programmierung interessant. Wer allerdings die Cortex-M-Prozessoren programmieren möchte, hat mit diesem Buch nicht das richtige. Es behandelt nicht die THUMB-Befehle, die der Cortex-M ausschließlich unterstützt.

Meine Bewertung: 5 von 5 Punkten für den Leser, der Assembler auf einem ARM-Prozessor lernen möchte und motiviert sind auch die Übungsaufgaben zu bearbeiten. Lesen alleine reicht nicht aus.

Darstellung negativer Dualzahlen: Einer- und Zweierkomplement

posted on

Darstellung von ganzen Zahlen

In einer vorgegebenen Anzahl von Bits (meist 8 Bit, 16 Bit, 32 Bit) kann eine ganze Zahl in verschiedenen Weisen dargestellt werden. Drei davon haben wir davon in der Zentralübung kennengelernt. Es ist aus der Darstellung selbst (und damit dem Inhalt der Speicherzelle, des Registers oder wo auch immer die Zahl gerade steht) nicht ersichtlich welche Darstellung gewählt wurde.
Je nach gewählter Darstellung kann mit der vorgegebenen Anzahl von Bits ein verschiedener Wertebereich dargestellt werden.

Die nachfolgende Tabelle stellt für die kennengelernten Kodierungen dar, welches die größte und welches die kleinste darstellbare Zahl ist, wenn n Stellen (Bits) für die Zahl zur Verfügung stehen.

Darstellung kleinste Zahl größte Zahl
„normal” (vorzeichenlos) 0 2n-1
Einerkomplement -(2n-1-1) 2n-1-1
Zweierkomplement -(2n-1) 2n-1-1

Für gebräuchliche Stellenzahlen ergiben sich folgende Wertebereiche:

Stellenzahl Werteb. vorzeichenlos Werteb. Einerkompl. Werteb. Zweierkompl.
8 Stellen = 8 Bit = 1 Byte 0 … 255 -127 … 127 -128 … 127
16 Stellen = 16 Bit = 1 Word 0 … 65535 -32767 … 32767 -32768 … 32767
32 Stellen = 32 Bit = 1 Long Word 0 … 4294967295 -214748363 … 214748363 -214748364 … 214748363

weiterlesen | read more | lee mas | lê mais | 閱讀更多 »


Unless otherwise credited all material Creative Commons License by Matthias Wimmer