<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://www.mikrocontroller.net/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=217.5.69.48</id>
	<title>Mikrocontroller.net - Benutzerbeiträge [de]</title>
	<link rel="self" type="application/atom+xml" href="https://www.mikrocontroller.net/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=217.5.69.48"/>
	<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/articles/Spezial:Beitr%C3%A4ge/217.5.69.48"/>
	<updated>2026-04-10T13:13:52Z</updated>
	<subtitle>Benutzerbeiträge</subtitle>
	<generator>MediaWiki 1.39.7</generator>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=AVR_Assembler_Makros&amp;diff=3839</id>
		<title>AVR Assembler Makros</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=AVR_Assembler_Makros&amp;diff=3839"/>
		<updated>2003-11-16T11:47:20Z</updated>

		<summary type="html">&lt;p&gt;217.5.69.48: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Hier entsteht eine Sammlung von verschiedenen nützlichen [[Makro]]s für den [[AVR]] [[Assembler]].&lt;br /&gt;
&lt;br /&gt;
=== 16 Bit Konstante in Z-Pointer laden ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
.MACRO SetZPtr ;(Adresse)&lt;br /&gt;
        ldi ZL, LOW(@0)&lt;br /&gt;
        ldi ZH, HIGH(@0)&lt;br /&gt;
.ENDMACRO&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 2 Register ohne Zwischenspeicher vertauschen ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
.MACRO SWAP ;(a, b)&lt;br /&gt;
        eor @0, @1&lt;br /&gt;
        eor @1, @0&lt;br /&gt;
        eor @0, @1&lt;br /&gt;
.ENDMACRO&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>217.5.69.48</name></author>
	</entry>
	<entry>
		<id>https://www.mikrocontroller.net/index.php?title=C_Makros&amp;diff=240</id>
		<title>C Makros</title>
		<link rel="alternate" type="text/html" href="https://www.mikrocontroller.net/index.php?title=C_Makros&amp;diff=240"/>
		<updated>2003-11-16T11:45:15Z</updated>

		<summary type="html">&lt;p&gt;217.5.69.48: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Hier entsteht eine Sammlung von verschiedenen nützlichen [[C]]-[[Makro]]s.&lt;br /&gt;
&lt;br /&gt;
=== Bitmanipulation ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/* Bit setzen */&lt;br /&gt;
#define set_bit(var, bit) ((var) |= (1 &amp;lt;&amp;lt; (bit)))&lt;br /&gt;
&lt;br /&gt;
/* Bit löschen */&lt;br /&gt;
#define clear_bit(var, bit) ((var) &amp;amp;= ~(1 &amp;lt;&amp;lt; (bit)))&lt;br /&gt;
&lt;br /&gt;
/* Bit abfragen */&lt;br /&gt;
#define bit_is_set(var, bit) ((var) &amp;amp; (1 &amp;lt;&amp;lt; (bit)))&lt;br /&gt;
#define bit_is_clear(var, bit) !bit_is_set(var, bit)&lt;br /&gt;
&lt;br /&gt;
/* Konstante in Binärschreibweise angeben (max. 8 Bit) */&lt;br /&gt;
/* Beispiel: BIN(01001011)                             */&lt;br /&gt;
#define BIN(x) \&lt;br /&gt;
        (((x)%10)\&lt;br /&gt;
         |((((x)/10)%10)&amp;lt;&amp;lt;1)\&lt;br /&gt;
         |((((x)/100)%10)&amp;lt;&amp;lt;2)\&lt;br /&gt;
         |((((x)/1000)%10)&amp;lt;&amp;lt;3)\&lt;br /&gt;
         |((((x)/10000)%10)&amp;lt;&amp;lt;4)\&lt;br /&gt;
         |((((x)/100000)%10)&amp;lt;&amp;lt;5)\&lt;br /&gt;
         |((((x)/1000000)%10)&amp;lt;&amp;lt;6)\&lt;br /&gt;
         |((((x)/10000000)%10)&amp;lt;&amp;lt;7)\&lt;br /&gt;
        )&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Sonstiges ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/* 2 Variablen ohne Zwischenspeicher vertauschen */&lt;br /&gt;
#define SWAP(x, y) {(x) ^= (y); (y) ^= (x); (x) ^= (y);}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>217.5.69.48</name></author>
	</entry>
</feed>